2 lx377213 lx377213 于 2016.03.04 17:31 提问

Yii 登录怎样保存更多信息
yii
public static function findByUsername($username)
{
     return static::findOne(['username' => $username, 'status' => self::STATUS_ACTIVE]);
}

public function getRole()
{
    return $this->hasOne(Role::className(), ['role_id' => 'user_role_id'])->inverseOf('user');
}

findByUsername查询user表中用户信息返回一个user对象,本想在user对象中插入role对象。查看文档中提供一个inversof方法,
但查出的结果是role对象中保存着一个user对象。请问怎样在user对象保存更多信息。

2个回答

lx377213
lx377213   2016.03.09 16:18
已采纳

首先getRole方法建立对应关系
查询时直接使用连接
return static::find()->joinWith('role')
->where(['id' => $id, 'status' => self::STATUS_ACTIVE])
->one();
(这个连接好象有什么懒加载查一文档)
页面调用时Yii::$app->user->identity->role就行了

caozhy
caozhy   Ds   Rxr 2016.03.06 07:21

既然你可以保存一个对象,那么可以聚合另一个对象作为属性然后保存即可。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
CAS服务端返回更多的用户登录信息
从cas server登录成功后,默认只能从cas server得到用户名。但程序中也可能遇到需要得到更多如姓名,手机号,email等更多用户信息的情况。cas client拿到用户名后再到数据库中查询,的确可以得到关于该用户的更多信息。但是如果用户登录成功后,直接从cas server返回给cas client用户的详细信息,这也是一个不错的做法。这个好处,尤其是在分布式中得以彰显,ca
CAS登录后获取更多信息
CAS登录后获取更多信息cas-server-3.5.2 cas-server-4.0.0两个版本的配置文件差别还是很大的,本文仅做个笔记用。无详细描述。
curl——登录获取需要的信息
爬厦门大学勤工助学(i.xmu.edu.cn)岗位的职位及其月薪水。第一步:登录Cookie (1)分析登录 ①首页 ②登录(输入学号密码,右键单击->审查元素->Network->√preserve log ->单击登录) ③找到相关的加载文件,并查看header信息 (2)获取Cookie 运行得到 获取Cookie成功啦~第二步:获取勤工助学的全部信息 (1
yii2框架session中保存和获取数据
保存数据 Yii::$app->session->set('user_exam', ['exam_id' => $exam_id, 'exam_type' => $exam_type]); 获取数据 $this->user_exam = Yii::$app->session->get('user_exam');
YII2中常用的页面跳转,以及获取用户信息和登录信息等信息总结
转载请注明原文链接地址: YII2中常用的页面跳转,以及获取用户信息和登录信息等信息总结 //当前域名 echo Yii::app()->request->hostInfo; //当前URL echo Yii::app()->request->getUrl(); //返回首页 echo Yii::app()->user->returnUrl; //提交后 防止重复提交 C
Yii2使用beforeLogout事件更新用户登录信息
beforeLogout 是 yii\web\User 的事件,如果想触发这个事件,可以把该事件挂载到配置文件中, 因为配置是支持事件挂载的: 'components' => [ 'user' => [ 'identityClass' => 'backend\models\AdminUser', 'enableAutoLogi
YII用户注册和用户登录(五)之进行session和cookie分析 ,并在前后区分session和cookie
5 进行session和cookie分析 ,并在前后区分session和cookie; 记住登录状态 这样下次再登录网站的时候,就不用重复输入用户名和密码。 是浏览器的cookie把状态给记住了。 制作表单:
Yii 表单输入数据保存不成功
Yii的Model可以对用户输入进行kong
Yii 2.0学习日记:用户登陆详细解析(上)
最近在利用Yii 2.0框架进行项目后台的编写,遇到的第一个问题是用户登陆,包括利用cookie,session登陆等等,笔者从源码角度结合实例为各位详细解析如何编写一个完整的用户登陆模块。(笔者的本地环境是PHP 5.5+MySQL5.6)
Yii2.0 探究三 :用户登录机制
前言:做后台管理的首要任务当然是登陆、注册;就yii来说,它为我们封装好了用户的验证方法,验证过程,所以,我们要做的就是模仿,既然接触了这个框架,就要照这个框架来思考,也就是Tink in YII,用自身的验证而不自己验证的方法有以下几点好处:一、为什么推荐你用自带的登陆? yii2.0框架为我们封装好了用户的信息; 比如: \Yii::$app->user->isGust 判断是否为访客