在背包CMS框架中,我使用迁移字段创建了一个表,例如:"parent_id"和"is_active"。 我使用以下命令在 crud 控制器中添加了这些字段:
$this->crud->addFields(array(
['name' => 'title',
'label' => 'Title',
'type'=>'text'],
['name' => 'parent_id',
'label' => 'Parent ID',
'type'=> 'number'],
['name' => 'is_active',
'label' => 'Is Active',
'type'=>'number']
), 'update/create/both');
它应该像我的其他表一样在编辑模式和创建模式下工作。它在创建和更新表单中显示定义的字段,但不幸的是它们不起作用,并且始终返回记录中的默认值或先前值。 我尝试以单一格式添加字段,但没有用。
问题就在这里:'update/create/both'
你应该只选择三个选项中的一个。
你想要的是只使用both
.但由于它是默认值,因此您实际上不需要将其添加到addFields
函数的末尾。
这将起作用:
$this->crud->addFields([[
'name' => 'title',
'label' => 'Title',
'type' => 'text'
], [
'name' => 'parent_id',
'label' => 'Parent ID',
'type' => 'number'
], [
'name' => 'is_active',
'label' => 'Is Active',
'type' => 'number'
]
]);
问题出在可填充变量上.....只有"title"字段位于相关模型的可填充变量中。