Я разрабатываю небольшое приложение на Grails 1.3.5, и я сталкиваюсь с этой очень странной проблемой.Булевы в граале не сохраняются?
В моих классах домена есть несколько булевых типизированных полей. Ни одно из этих полей не сохраняется при создании нового экземпляра (и, конечно же, его сохранении).
К примеру, у меня есть этот класс домен «Сотрудник», определяется следующим образом (упрощенно):
class Employee {
String name
boolean present
}
Когда я создаю новый экземпляр этого класса, и я упорно его, имя сохраняется, но названный булев не является.
def newEmp = new Employee(name: "me", present: true)
newEmp.save(failOnError: true, flush: true)
При сохранении не возникает ошибки. Однако в базе данных (я использую MySQL) двоичный столбец «присутствует» всегда остается пустым.
Что может быть причиной этого? Это происходит во всех моих классах домена.
У меня никогда не было проблем с этим. Возможно, ваша упрощенная версия кода не показывает нам, что может вызвать ошибку. Можете ли вы опубликовать большой фрагмент кода? Действительно ли ваше поле называется 'present'? Или это что-то еще, что может быть зарезервированным словом в mysql? –
Также, когда вы делаете поле 'Boolean' (вместо примитивного' boolean')? Это изменяет поведение? –