У меня есть модель Миссии, в которой есть Задача has_many, и Задача принадлежит Миссии
. В целях безопасности я проверил это на Модели Задач:
validates_presence_of :mission_id
validates_numericality_of :mission_id
Но проблема в том, чтокогда создаете миссию и добавляете задачи следующим образом:
@mission.tasks.build
Проверка возвращает ошибку, потому что идентификатор миссии в задаче нулевой (миссия еще не была создана)
Если яУдалите валидацию, Миссия и Задание успешно созданы, но как я могу сохранить валидацию и продолжить эту работу?Я мог бы сделать обратный вызов после сохранения, но я не думаю, что это правильно, потому что я не хочу сохранять Задачи без mission_id.
PS Я скрываю свое поле миссии в форме.Если у меня это будет видно, оно покажет правильную миссию, и все в порядке.Но если я скрываю это, происходит ошибка.
<%= f.hidden_field :mission, :label => "Missão" %>
Форма сбрасывает атрибуты, заданные контроллером для нового действия?