В моей форме есть text_area
с именем answer_choices
, который используется для ввода ответов (разделенных переводом строки):
Some answer
Another answer
Yet another
Поэтому, когда пользователь отправляет форму, я разбираю answer_choices
на отдельные ответы для ввода в базу данных, используя answer_choices.split(/\r\n/)
Затем, когда они редактируют форму, я собираю эти отдельные ответы, используя этот метод:
У меня есть следующий метод в моей Question
модели:
def answer_choices
string = ''
answers.each do |answer|
string += "#{answer.text.to_s}\n"
end
string.strip
end
Это позволяет мне просто сделать <%= f.text_area :answer_choices %>
в моем представлении, и я получаю ответы, разделенные переносами строк. Отлично.
Проблема в том, что когда я снова отправляю форму (для обновления записей), этот маленький бит answer_choices.split(/\r\n/)
, кажется, вызывает этот пользовательский метод вместо того, чтобы брать какие-либо новые данные из поля формы и, таким образом, просто повторно добавляет те же данные, что и раньше.
Так, как я могу иметь свой собственный метод для вывода формы?