在我使用Yii::$app->user->isGuest
时的控制台应用程序中,它给出了以下异常:
Exception 'yii\base\UnknownPropertyException' with message 'Getting unknown prop
erty: yii\console\Application::user'
我甚至尝试在配置文件中添加组件数组中的用户。但它没有奏效。知道我做错了什么吗?
答案 0 :(得分:2)
原因很简单。 Guide说申请组件(用户是组件):
user:表示用户认证信息。这个组件 仅适用于Web应用程序请参阅 验证部分了解更多详情。
所以Yii::$app->user
在控制台应用程序中不可用。
因此,您必须考虑在控制台应用程序也使用的模型类中使用此组件。
额外注意:它由BlameableBehavior在内部使用,但是,这不会产生任何问题,因为如果模型被保存/创建且没有用户可用,则用户将为null。