gpt4 book ai didi

laravel - 在 Laravel Nova 中显示数据透视表的附加字段的问题

转载 作者:行者123 更新时间:2023-12-02 00:26:29 26 4
gpt4 key购买 nike

我在管理端使用 Laravel Nova。我有这个问题,在我的数据透视表中,我添加了额外的字段。我有用户表和事件表。用户可以有多个事件,事件可以有多个用户。所以我为这两个模型创建了一个数据透视表。但我想要用户事件的状态。所以我在数据透视表中添加了额外的状态字段。

我现在的问题是 Laravel Nova。在我的事件资源中,我有这个:

BelongsToMany::make('Pending Users', 'pendingUsers', 'App\Nova\User'),

它显示了另一个用于未决客户的表格。我已经可以获取特定事件中的用户列表,但无法向表显示用户事件的状态。如果用户已获批准或仍处于待定状态。

哪种策略最适合我的情况?我正在考虑为事件和用户制作模型。

我不知道如何在 Laravel Nova 的 BelongsToMany 中显示数据透视表的附加字段。它只是显示了我在 Nova 的用户资源中添加的内容。比如身份证和名字。但是我不知道用户事件的状态会在哪里显示。我想在 BelongsToMany 的事件表中显示给用户。

最佳答案

您需要确保您在两个模型中都定义了关系,然后让 Nova 知道您想要显示哪些字段,如下所示:

在您的事件资源中:

BelongsToMany::make('Users')
->fields(function() {
return [
Text::make('status')
];
}),

在您的事件模型中:

public function users()
{
return $this->belongsToMany(User::class)->withPivot('status');
}

在您的用户模型中:

public function events()
{
return $this->belongsToMany(Event::class)->withPivot('status');
}

关于laravel - 在 Laravel Nova 中显示数据透视表的附加字段的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53652316/

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