抱歉没有正确指定问题,因为我甚至不知道我应该在那里写什么,但这是我的问题。
我有2个表users
和organiser
,他们都使用相同的桌面系统在我的项目中拥有不同的权限,并且有2个不同的login
页面。
现在令人困惑的是,我想引入另一个功能来列出网站上的广告,我希望两个用户都在网站上发布广告。为此,有时我需要获取登录用户的id
和其他详细信息,那么我应该在此处了解哪些user
已登录或organiser
已登录?< / p>
我应该对数据库进行任何更改吗?或者在advertisement
表中添加任何额外的字段,表示哪个用户创建了该记录?如果重要,我正在使用yii2
框架。
以下是frontend
yii2
配置文件的代码
return [
'id' => 'app-frontend',
'controllerNamespace' => 'frontend\controllers',
'defaultRoute' => 'event/index',
'components' => [
'user' => [
'identityClass' => 'common\models\User',
'enableAutoLogin' => true,
'identityCookie' => [
'name' => '_frontendUser', // unique for frontend
],
],
'session' => [
'name' => 'PHPFRONTSESSID',
'savePath' => sys_get_temp_dir(),
],
'request' => [
// !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
'cookieValidationKey' => 'YNdaEYHtai',
'csrfParam' => '_frontendCSRF',
],
],
];
答案 0 :(得分:2)
要向User类添加字段或方法,您可以或扩展User类(User doc),或者创建一个实现身份界面(Identity doc)的新User类。
取决于您的经验或能力。
(您还可以评估与用户管理相关的扩展程序)
要访问当前登录的用户,您可以使用
用户名
Yii::$app->user->identity->username
代表
Yii::$app->user->id