Laravel 在Larvel Nova中显示透视表的附加字段时出现问题

Laravel 在Larvel Nova中显示透视表的附加字段时出现问题,laravel,laravel-nova,Laravel,Laravel Nova,我正在使用Laravel Nova作为我的管理端。 我有一个问题,在透视表中,我添加了额外的字段。 我有用户表和事件表。用户可以有许多事件,而事件可以有许多用户。因此,我为这两个模型创建了一个透视表。但是我想知道用户事件的状态。所以我在pivot表中添加了额外的status字段 我现在的问题是在拉拉维尔新星。 在我的事件资源中,我有: BelongsToMany::make('Pending Users', 'pendingUsers', 'App\Nova\User'), 它为挂起的客户端显

我正在使用Laravel Nova作为我的管理端。 我有一个问题,在透视表中,我添加了额外的字段。 我有用户表和事件表。用户可以有许多事件,而事件可以有许多用户。因此,我为这两个模型创建了一个透视表。但是我想知道用户事件的状态。所以我在pivot表中添加了额外的status字段

我现在的问题是在拉拉维尔新星。 在我的事件资源中,我有:

BelongsToMany::make('Pending Users', 'pendingUsers', 'App\Nova\User'),
它为挂起的客户端显示了另一个表。我已经可以获取特定事件中的用户列表,但无法向表显示用户事件的状态。如果用户已批准或仍处于挂起状态

在我的情况下,什么策略是最好的?我正在考虑为事件和用户创建一个模型


我不知道如何在拉拉维尔新星的贝隆戈马尼显示透视表的附加字段。它只是显示了我在Nova的用户资源中添加的内容。比如身份证和名字。但我不知道用户事件的状态将显示在哪里。我想把它显示在用户的事件列表中。

我通过使用pivot('field name')定义关系来实现这一点,它让我很长一段时间发疯

BelongsToMany::make('your_relationship')
    ->fields(function () {
        return [
            Text::make('your_text'),
        ];
    })
你的亲戚会在这里,就像我之前说的那样

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

您需要确保在两个模型中都定义了关系,然后让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');
}

你能给我举个例子吗?我已经有了这个:return$this->belongsomany(User::class)->withPivot(‘付款证明’);但是在我的事件中,挂起用户的表仍然只显示用户的全名。BelongToMany::make('pendingUsers','pendingUsers','App\Nova\users'),我现在可以获取pivot表中其他列的数据。但它只会显示一次我点击“编辑”的belongtomany。例如,我在pivot表中有一列用于支付证明-如果我单击编辑,它将显示出来。这是不可下载的。我很抱歉,我没有及时回答。)我看到它只是工作。将pivot添加到您的模型时,它起到了作用。我希望我的帮助对你有帮助!!谢谢你,先生。是否有一种方法可以显示要索引的文件,以便用户可以下载它,而不需要添加下载操作。