gpt4 book ai didi

mysql - 如何在 laravel 集合中添加额外元素

转载 作者:行者123 更新时间:2023-11-29 18:37:49 27 4
gpt4 key购买 nike

我想知道如何在 laravel 集合中添加额外的列,从数据库返回。例如。

用户模型用户->id用户->名称

预订模式预订->user_id预订->id

现在

$users = User::all();
$user_reservation = Reservation::all();

foreach ($users as $user)
{
foreach ($user_reservation as $ur)
{
if ($user->id == $ur->user_id)
{
//Add extra column in to the users model
}
}
}

最佳答案

Laravel 有一个叫做 $appends 的东西,带有访问器。如何使用它

在要添加自定义集合的模型中定义 $append。就我而言用户模型

    class User extends Model{

protected $appends = ['user_eservation'];

public function getUserReservations($id)
{
return User::where('id', $id)->first();
}

public function getUserReservationAttribute()
{
return $this->getUserReservations(Auth::user()->id);
}
}

现在您可以通过调用 getUserReservatoin 函数来调用数据库中不可用的自定义属性。

例如

$users = User::all();$user_reservation = 预订::all();

foreach ($users as $user)
{
foreach ($user_reservation as $ur)
{
if ($user->id == $ur->user_id)
{
$user->getUserReservations();
}
}
}

关于mysql - 如何在 laravel 集合中添加额外元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45141242/

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