Я предполагаю, что вы используете какой-то метод флажка для указания "Это правильный ответ".
В этом случае вы можете просто установить флажок, содержащий идентификатор ответа, а затем на create
вы можете установить в столбце correct_answer_id
значение идентификатора этого флажка.
Однако, поскольку ваши ответы еще не сохранены (сборка создает только объекты в памяти), у вас не будет идентификаторов, пока ответы не будут сохранены. Самое простое решение - просто пометить ответ как правильный в таблице ответов, а не в таблице вопросов. Затем вы можете создать метод в модели Question
, например:
def correct_answer
@correct ||= answers.where(:is_correct => true)
end
Это также даст вам возможность учесть несколько правильных ответов, если вам это нужно.
Если в этом нет необходимости, вы всегда можете просто добавить .first
в конец строки запроса, чтобы вы возвращали один ответ, а не массив правильных ответов.