在 Laravel Nova 中显示附加字段 table 的问题
Problem in showing additional field of pivot table in Larvel Nova
我在管理端使用 Laravel Nova。
我有这个问题,在我的数据透视 table 中,我添加了额外的字段。
我有用户 table 和事件 table。用户可以有多个事件,事件可以有多个用户。所以我为 2 个模型创建了一个枢轴 table。但我想要用户事件的状态。所以我在 pivot table.
中添加了额外的状态字段
我现在的问题是 Laravel Nova。
在我的活动资源中,我有这个:
BelongsToMany::make('Pending Users', 'pendingUsers', 'App\Nova\User'),
它显示另一个 table 待定客户。我已经可以获取特定事件中的用户列表,但无法向 table 显示用户事件的状态。如果用户已获批准或仍处于待定状态。
哪种策略最适合我的情况?我正在考虑为事件和用户制作模型。
我不知道如何在 Laravel Nova 的 BelongsToMany 中显示 pivot table 的附加字段。它只是显示了我在 Nova 的用户资源中添加的内容。比如身份证和名字。但是我不知道用户事件的状态会在哪里显示。我想在 BelongsToMany 事件的 table 中向用户显示它。
我通过定义 ->withPivot('filed 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');
}
我在管理端使用 Laravel Nova。 我有这个问题,在我的数据透视 table 中,我添加了额外的字段。 我有用户 table 和事件 table。用户可以有多个事件,事件可以有多个用户。所以我为 2 个模型创建了一个枢轴 table。但我想要用户事件的状态。所以我在 pivot table.
中添加了额外的状态字段我现在的问题是 Laravel Nova。 在我的活动资源中,我有这个:
BelongsToMany::make('Pending Users', 'pendingUsers', 'App\Nova\User'),
它显示另一个 table 待定客户。我已经可以获取特定事件中的用户列表,但无法向 table 显示用户事件的状态。如果用户已获批准或仍处于待定状态。
哪种策略最适合我的情况?我正在考虑为事件和用户制作模型。
我不知道如何在 Laravel Nova 的 BelongsToMany 中显示 pivot table 的附加字段。它只是显示了我在 Nova 的用户资源中添加的内容。比如身份证和名字。但是我不知道用户事件的状态会在哪里显示。我想在 BelongsToMany 事件的 table 中向用户显示它。
我通过定义 ->withPivot('filed 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');
}