我正在尝试使用此软件包:https://github.com/glorand/laravel-model-settings
要在模型上进行一些设置。
我已经安装了它,并为我的客户端模型正确设置了,就像这样:
客户迁移表:
$table->json('properties');
客户端模型:
use HasSettingsField;
public $settingsFieldName = 'properties';
protected $casts = ['properties' => 'json'];
我需要此演员表,因为我正在保存Laravel Nova中的属性
新资源:
Code::make('Properties', 'properties')->json(),
我的错误:
json_decode()期望参数1为字符串,给定数组
在包装中返回以下代码:
public function getSettingsValue(): array
{
$settingsFieldName = $this->getSettingsFieldName();
$attributes = $this->getAttributes();
if (!array_has($attributes, $settingsFieldName)) {
throw new ModelSettingsException("Unknown field ($settingsFieldName) on table {$this->getTable()}");
}
return json_decode($this->getAttributeValue($settingsFieldName) ?? '[]', true);
}