我正在尝试在此处实现multiauth包:https://github.com/ollieread/multiauth#laravel-multi-auth
我有两个模特,范和艺术家。
我按照说明安装了软件包,然后在auth.php
中使用了
'multi' => array(
'user' => array(
'driver' => 'eloquent',
'model' => 'Fan'
),
'artist' => array(
'driver' => 'database',
'table' => 'artists'
)
),
我试图模仿这个例子。但是,当我运行原始代码时(仅基于粉丝,因此我将用户身份验证与我的风扇模型相关联)
当我使用原始$friends = Auth::user()->friends
(例如)调用之一到达我的某个页面时,出现错误:
Undefined property: Ollieread\Multiauth\AuthManager::$friends
当朋友显然是粉丝表中的一栏时。有什么想法吗?
答案 0 :(得分:1)
你以错误的方式调用authed模型。
$friends = Auth::user()->friends
这是旧方法,其中user()
是返回模型的方法。现在,第一种方法是auth的类型,我甚至用get()
方法添加它以减少混淆。
$friends = Auth::user()->get()->friends;
在您的实例中,Auth::user()
是配置中Auth
条目的user
实例,Auth::artist()
是Auth
artist
实例1}}在你的配置中输入。
基本上采用原始auth库执行操作的方式,并将其全部移动一级。
Auth::user()->get()->id // Original: Auth::user()->id
Auth::user()->check() // Original: Auth::check()