Как мне сделать form_for, чтобы завершить с ранее представленными данными, когда проверка не проходит? - PullRequest
1 голос
/ 04 сентября 2011
  • Учитывая, что у меня большая форма
  • Когда пользователь отправляет его
  • И проверка данных не удается
  • Затем пользователь снова перенаправляется на предыдущую страницу
  • И форма должна содержать данные, которые пользователь ранее отправил

Как мне достичь последней части? :П Есть что-то вроде flash[] для помощника form_for? Я должен использовать AJAX?

Ответы [ 2 ]

2 голосов
/ 04 сентября 2011

Как отмечается в некоторых комментариях, это может быть поведением по умолчанию, если вы используете лучшие практики.

Вот пример действий контроллера new / create, которые должны демонстрировать указанное поведение:

def new
  @model = MyModel.new
end

def create
  @model = MyModel.new(params[:my_model])

  if @model.save
    redirect_to my_models_url, :notice => "Success!"
  else
    flash.now[:error] = "There was an error"
    render :new
  end
end
0 голосов
/ 04 сентября 2011

Проверьте, по вашему мнению, request.method ==: post, и если это так, используйте вместо этого данные в params [].Он будет содержать данные, которые вы только что опубликовали.

...