gpt4 book ai didi

php - 使用 Laravel 5.6 加载用户设置

转载 作者:行者123 更新时间:2023-12-02 03:39:57 25 4
gpt4 key购买 nike

我希望能够修改 Laravel 5.6 使用的 Auth->user() 数据。我有一个名为设置的表,其中有一列名为 user_id ,对应于用户 ID。

我尝试修改 app\User.php 并添加 __construct 函数:

   public function __construct() {

$this->settings = Settings::where('user_id',
Auth->user->id()
)->first();
}

我创建了一个文件app\Settings.php,内容如下:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class settings extends Model
{
protected $table = "settings";

}

但是,我在 User.php 中的 Auth->user()->id 行收到用户错误,尽管我确信那是正确的如何引用它?

如何将数据从 settings 表加载到 User 类?

最佳答案

您可以使用load()方法来延迟加载关系:

auth()->user()->load('settings');

每个请求只需执行一次此操作,例如在中间件中。然后您就可以在应用程序的任何部分使用这些数据:

{{ auth()->user()->settings->theme }}

当然,要实现此目的,您需要在 User 模型中定义关系,例如:

public function settings()
{
return $this->hasOne(Settings::class);
}

关于php - 使用 Laravel 5.6 加载用户设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48975150/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com