Сохранить на моем домене Объект класса не работает. - PullRequest
1 голос
/ 29 января 2012

У меня есть класс User, который имеет поле List, а именно pt. Это поле не инициализируется, когда пользователь регистрирует свою учетную запись. Но когда пользователь идет это действие контроллера:

def updatePt() { 
       //performs some action 
       def user = User.get(springSecurityService.principal.id)  //find the user 
       user.pt = [] 
       //on certain conditions i put values into user.pt like this 
       user.pt << "E" 
       //at last I save it 
       user.save() 
} 

Но, используя действие user / show через скаффолдинг, я обнаружил, что поле pt не сохраняется в объекте users. Где я ошибаюсь?

Ответы [ 2 ]

1 голос
/ 29 января 2012

Вы должны обеспечить статическое отображение в классе домена Users, чтобы Grails знал, что поле должно быть сохранено:

class User {
    static hasMany = [pt: String]
}
1 голос
/ 29 января 2012

Возможно из-за ошибки валидации.Попробуйте с

if (!user.save()) {
   log.error('User not saved')
   user.errors.each {
       log.error('User error: $it')
   }
}

PS или вы можете использовать println вместо log.error

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...