如何在Laravel中使用多个数据库表进行身份验证?
例如,我有3个表: 1.普通用户登录表2.成员资格明细表3. CMS用户详细表
当用户从CMS或成员登录登录时,Auth将从“通用用户登录”表中进行验证。但是,如何使Auth函数也从第二个或第三个表中获取信息取决于用户类型?然后,我可以通过类似Auth::user()->address的方式访问这些信息,地址存储在成员资格明细表中。
谢谢。
发布于 2014-01-08 15:57:55
创建关系列,以便将用户与其他表中的数据关联起来:
<?php
use Illuminate\Auth\UserInterface;
use Illuminate\Auth\Reminders\RemindableInterface;
class User extends Eloquent implements UserInterface, RemindableInterface {
public function membership()
{
return $this->belongsTo('Membership');
}
public function userDetails()
{
return $this->belongsTo('CmsDetail');
}
}
class Membership extends Eloquent {
protected $table = 'membership';
}
class CmsDetail extends Eloquent {
protected $table = 'cms_details';
}然后你就可以
echo Auth::user()->membership->member_since;
echo Auth::user()->userDetails->address;https://stackoverflow.com/questions/20985073
复制相似问题