Laravel Nova Custom Fields获得模型价值

时间:2019-04-25 22:06:44

标签: laravel laravel-nova

我为Nova创建了一个自定义字段。 在此字段上,我需要获取一些额外的模型数据,例如$model->country,以显示在表单上。 如何将这些数据传递给Vue组件?

我尝试使用:

return $this->withMeta

但是我不知道如何从模型传递数据。

1 个答案:

答案 0 :(得分:1)

将自定义字段(如普通字段)添加到资源fields()中,并将自定义方法与模型中的数据链接起来:

CountryField::make('Country')->country('Germany'),

在您的Nova组件中定义此自定义方法(请参见src文件夹):

public function country($value)
{
    return $this->withMeta([
        'country' => $value,
    ]);
}

您可以在FormField.vue中从此方法访问返回的数据,如下所示:

{{ field.country }}