У меня есть файл определения полей формы, как показано ниже:
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)
Как я могу предотвратить отправку этого вспомогательного поля? Или, может быть, есть способ удалить это поле до того, как модель будет сохранена в базе данных?
попробуйте добавить подчеркивание перед именем поля (новая функция October Cms, поэтому, возможно, вам нужно обновить ее до версии 382)
как это _booth_picker
редактировать : Я не уверен, но, кажется, эта функция не работает с полем флажок 🙁
Мы можем определить имена полей внутри purgeable
имущество.
Удаленные атрибуты не будут сохранены в базе данных при создании или обновлении модели. Чтобы очистить атрибуты в вашей модели, примените признак October \ Rain \ Database \ Traits \ Purgeable и объявите свойство $ purgeable с массивом, содержащим атрибуты для очистки.
/**
* @var array List of attributes to purge.
*/
protected $purgeable = ['booth_picker'];