Laravel Nova 自定义字段获取模型值

Laravel Nova Custom Fields get model value

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

我尝试使用:

return $this->withMeta

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

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

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

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

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

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

{{ field.country }}