laravel - Laravel Nova 相关查询的参数太少
问题描述
我有一个关系需要根据它用于填充的 Laravel Nova 字段进行不同的过滤。
- 单个Process_type有一个或多个Process_justification作为选项附加 (BelongsToMany)
- 单个Process_type也有一个Process_justification设置为默认值 (BelongsTo)
我正在使用相关查询来过滤这两个字段中的每一个的可用选项。
我的 Process_type 资源中的两个字段如下:
BelongsTo::make('Default', 'process_justification', Process_justification::class)
BelongsToMany::make('Options', 'process_justifications', Process_justification::class)
相关查询如下所示:
public static function relatableProcess_justifications(NovaRequest $request, $query, Field $field)
{
if ($field instanceof BelongsTo) {
//query builder to filter options
...........
} else {
//return all options
return $query;
}
}
此模式来自 Laravel Nova 关于动态相关模型的文档(https://nova.laravel.com/docs/3.0/resources/authorization.html#dynamic-relatable-methods)它描述了将字段作为第三个参数添加到相关模型查询,然后在条件中使用它来选择过滤器逻辑。
我得到的错误是
函数 App\Nova\Process_type::relatableProcess_justifications() 的参数太少,通过了 2 个,预期正好有 3 个
根据文档,我的make()
电话有三个参数,知道我缺少什么吗?
我在 Laravel 7.x 和 Nova 3.x
解决方案
推荐阅读
- python - 调整位置编码形状(DETR 模型)以支持批量大小 > 1
- python-3.x - 如何使用 Meson 和 Python 依赖项进行交叉编译?
- javascript - 学习 React - ReferenceError
- amazon-web-services - AWS DynamoDB:如何订购 DynamoDB Stream 触发的 Lambda?
- haskell - Haskell 可扩展效果:另一种效果中的效果
- reactjs - 反应条纹 3d 安全
- android - 如何在android中一起使用ffmpeg进行文本和gif叠加
- c - C - 从函数返回浮点值并打印它们
- amazon-cognito - Cognito - 无法为用户添加 cognito:groups
- node.js - Knex.js 忽略了外键约束