试图在 Yii2 上获取 属性 的非对象
Trying to get property of non-object on Yii2
我想根据我使用的用户组 ID 显示数据
Yii::$app->user->identity->group_id
在我的模型搜索中是这样的:
$query->andFilterWhere([
......
'group_id' => Yii::$app->user->identity->group_id,
'created_date' => $this->dreated_date,
]);
当我在应用程序中有会话时它工作,但是当我没有会话时页面显示错误:
Trying to get property of non-object
对于'group_id' => Yii::$app->user->identity->group_id,
如果我没有任何会话,如何在我打开该页面时将页面重定向到登录页面。谢谢。
编辑
我加了
if (Yii::$app->user->isGuest) {
return $this->redirect(Yii::$app->user->loginUrl);
}
在我的控制器中访问 ModelSearch 的每个操作中。
您可以为此操作添加访问控制过滤器。
在控制器中添加:
public function behaviors()
{
return [
'access' => [
'class' => \yii\filters\AccessControl::className(),
'only' => ['ID of your action here'],
'rules' => [
// allow authenticated users
[
'allow' => true,
'roles' => ['@'],
],
],
],
];
}
或者您可以直接在操作中添加重定向 - 例如将其放在开头:
if (Yii::$app->user->isGuest) {
return $this->redirect(Yii::$app->user->loginUrl);
}
我想根据我使用的用户组 ID 显示数据
Yii::$app->user->identity->group_id
在我的模型搜索中是这样的:
$query->andFilterWhere([
......
'group_id' => Yii::$app->user->identity->group_id,
'created_date' => $this->dreated_date,
]);
当我在应用程序中有会话时它工作,但是当我没有会话时页面显示错误:
Trying to get property of non-object
对于'group_id' => Yii::$app->user->identity->group_id,
如果我没有任何会话,如何在我打开该页面时将页面重定向到登录页面。谢谢。
编辑
我加了
if (Yii::$app->user->isGuest) {
return $this->redirect(Yii::$app->user->loginUrl);
}
在我的控制器中访问 ModelSearch 的每个操作中。
您可以为此操作添加访问控制过滤器。
在控制器中添加:
public function behaviors()
{
return [
'access' => [
'class' => \yii\filters\AccessControl::className(),
'only' => ['ID of your action here'],
'rules' => [
// allow authenticated users
[
'allow' => true,
'roles' => ['@'],
],
],
],
];
}
或者您可以直接在操作中添加重定向 - 例如将其放在开头:
if (Yii::$app->user->isGuest) {
return $this->redirect(Yii::$app->user->loginUrl);
}