【问题标题】:Laravel Nova - Can a field dependsOn parent resource field with-in a HasOne relationshipLaravel Nova - 字段是否可以依赖父资源字段与 HasOne 关系
【发布时间】:2022-11-23 00:23:02
【问题描述】:

父资源具有这些字段

    Select::make('Currency')->options(...),
    HasOne::make('Child', 'child', 'App\Nova\ChildResource')->required(),

当我添加 HasOne->required 时,子资源字段在我创建(添加新的)父资源时内联显示(在同一页面上)。子字段如下:

    Text::make('Some Field')
       ->dependsOn(['???'], function() {})   //it depends upon Currency Field in the parent resource

我想知道这是否可能?如果是,那么我应该提到什么属性而不​​是???在取决于?

我试过使用“货币”,但它不起作用......

【问题讨论】:

    标签: laravel laravel-nova


    【解决方案1】:

    HasOne 关系的另一端是返回 belongsTo 的 Child 的父函数。

    function parent()
    {
        return $this->belongsTo(Parent::class);
    }
    

    在 nova 中添加关系

    BelongsTo::make('Parent'),
    

    然后你可以使用 depends

    Text::make('Some Field')->dependsOn(['parent'], 
        function (Text $field, NovaRequest $request, FormData $formData) {
            $model = $request->findModel();
            if ($model && $model->parent && $model->parent->currency === 'USD') 
            {
                $field->readonly(true);
            }
        }
    ),
    

    【讨论】:

      猜你喜欢
      • 2022-06-15
      • 2020-04-17
      • 2019-12-08
      • 2022-08-10
      • 2019-07-20
      • 1970-01-01
      • 1970-01-01
      • 2019-05-19
      • 1970-01-01
      相关资源
      最近更新 更多