我有一个表单字段定义文件,如下所示:
fields:
pivot[hall]:
label: Hall
type: text
span: auto
pivot[booth]:
label: Booth
type: text
span: auto
booth_picker:
label: Select Booth
type: boothpicker
span: full
第三个字段只是一个表单窗口小部件,它提供了一种方便的可视方式来设置booth
字段的值。因此,我不需要提交booth_picker
字段并将其保存到数据库中,因为表中没有这样的字段。只需提交并保存hall
和booth
。我目前收到此错误:
SQLSTATE [42S22]:找不到列:1054未知列'booth_picker' 在'字段列表'中(SQL:更新
users
设置updated_at
= 2016-12-15 13:14:44,booth_picker
=id
= 37)“
如何阻止提交此辅助字段?或者也许有一种方法可以在将模型保存到数据库之前删除此字段?
答案 0 :(得分:4)
尝试在字段名称之前添加下划线(新的十月Cms功能,所以可能需要将其升级到版本382)
就像_booth_picker
编辑:我不确定,但似乎此功能不适用于复选框字段: - (
答案 1 :(得分:2)
我们可以在purgeable
属性中定义字段名称。
创建或更新模型时,清除的属性不会保存到数据库中。要清除模型中的属性,请应用October \ Rain \ Database \ Traits \ Purgeable特征,并声明$ purgeable属性以及包含要清除的属性的数组。
/**
* @var array List of attributes to purge.
*/
protected $purgeable = ['booth_picker'];