如何在Laravel中扩展Auth对象?

时间:2018-03-24 21:02:29

标签: laravel laravel-5 laravel-5.3

我有一个默认表用户和相关表user_details.

当用户进行身份验证时,它会从users表中检索数据,并且可用于全局对象:

Auth::user()

如何使用相关表user_details中的数据扩展Auth :: user()?

原因是在每个页面(标题处)显示有关经过身份验证的用户的完整信息

1 个答案:

答案 0 :(得分:1)

如果我正确理解了这个问题,则不需要扩展Auth,只需扩展用户模型。您可以在我们的用户模型上为我们提供几个不同的帮助, - > hasOne, - > belongsTo等(假设您有一个user_details模型),并且雄辩应该完成其余的工作。

https://laravel.com/docs/master/eloquent-relationships

编辑: 您可以为用户模型添加访问者。 那么,在您的app \ User.php

public function getCustomAttribute()
{
    return 'Custom Attribute';
}

你应该可以通过类似

的方式获得它
Auth::user()->custom

https://laravel.com/docs/master/eloquent-mutators

(同样,我可能不理解你的问题)