如何根据当前用户登录从数据库中获取数据?例如,当用户登录并打开您的页面时,它只显示他/她的数据。
答案 0 :(得分:1)
我想这是解决方案。 (这是我类似项目的工作代码)。
控制器:
public function actionVacancyList()
{
if ( !Yii::$app->user->isGuest )
{
$user_vacancies = Vacancies::getVacanciesByUser(Yii::$app->user->id);
return $this->render('vacancy-list', [
'user_vacancies' => $user_vacancies,
]);
}
return $this->redirect(['/site/login']);
}
型号:
static public function getVacanciesByUser($user_id)
{
return Vacancies::find()
->where(['user_id' => $user_id])
->orderBy('id DESC')
->limit(100)
->all();
}
答案 1 :(得分:0)
你应该使用WHERE CLAUSE
示例:
$sql = "Select * from datatable Where username = username";
答案 2 :(得分:0)
您可以使用Yii::$app->user->identity
获取经过身份验证的用户信息,然后从数据库中获取所需的数据。