1

首先,每次我们登录 laravel 时,默认情况下用户(表)总是可以通过使用Auth::user()访问。

请参阅下面的 2 个表:我的难题是,如何使用用户表中的订阅者 ID 作为外键将订阅者的列添加到用户(表)。
在此处输入图像描述

我的期望是,我希望所有这些(以下)在我登录后都可以在全球范围内访问。

Auth::user()->name
Auth::user()->age
Auth::user()->gender
Auth::user()->marital_status
Auth::user()->subscriber_id
Auth::user()->subscriber_name
Auth::user()->subscriber_status
Auth::user()->subscriber_created_at
Auth::user()->subscriber_created_at

我一直在谷歌上寻找答案,但没有任何帮助。我希望有人可以帮助我。

4

2 回答 2

5

请参阅https://laravel.com/docs/5.7/eloquent-relationships

在用户模型上设置关系。

例如,对于一对一的关系:

public function subscriber()
{
    return $this->hasOne('App\Subscribers', 'id', 'subscriber_id');
}
于 2019-03-12T19:42:36.233 回答
0

我在上面创建了包含列的 Subscriber.php(model),然后在我的 User.php(model) 中放入了以下代码:

public function subscriber()
{
    return $this->hasOne('App\Subscriber', 'id', 'subscriber_id');
}

然后要访问所有列,我做了这些:

Auth::user()->name
Auth::user()->age
Auth::user()->gender
Auth::user()->marital_status
Auth::user()->subscriber_id

Auth::user()->subscriber->id
Auth::user()->subscriber->name
Auth::user()->subscriber->status
Auth::user()->subscriber->created_at
Auth::user()->subscriber->updated_at
于 2019-03-12T20:54:07.750 回答