我使用Laravel Backpack的假字段属性将点击的复选框存储到数据库中。但我不希望它存储为JSON而是存储为数组,例如:
:
{ "key" : "value }
但:
[ "value" ]
这里有更多的上下文:https://backpackforlaravel.com/docs/5.x/crud-fields optional-fake-field-attributes-stores-fake-attributes-as-json-in
下面是一个示例代码片段
protected function setupUpdateOperation()
{
// The data for the checkboxes values
$roles = Role::all();
foreach ($roles as $role) {
CRUD::field('checkbox_' . $role->id)->type('checkbox')->label($role->description)->fake(true)->store_in('checkboxes_data');
}
}
让我知道如果你需要更多的信息!
一旦你有了集合,你可以简单地迭代它来提取值并存储在一个单独的数组中:
$roles = Role::all();
$role_values = [];
foreach($roles as $key => $value) {
$role_values[] = $value;
}
$role_values
现在将是一个一维数组,包含:
['value 1','value 2', .... , 'value n']
找到了!我只需要重写update方法。
例如:
public function update($id)
{
// Logic after update is done.
}