Что заставляет данные предварительно заполнять поле в случае сбоя формы? - PullRequest
0 голосов
/ 22 мая 2011

Я сделал эту форму почти полностью с нуля и AJAX, поэтому он не работает, я полагаю.

Но я создаю свою форму в контроллере следующим образом.

def skip_to_end
  @card_signup ||= CardSignup.new(params[:card_signup])

  respond_to do |wants|
    wants.html { redirect_to new_card_signup_path }
    wants.json { render :json => { :html => (render_to_string :partial => '/card_signups/new_form') } }
  end
end

Форма выглядит так:

 - form_for @card_signup do |f|
      = f.text_field :first_name, :style => "width: 166px;", :value => "first name", :rel => "first name"
      %div{:class => 'error_message'}
      ....

И когда я пытаюсь сохранить его наполовину завершенным, он переходит к моему create действию:

def create
  @card_signup = current_user.build_card_signup(params[:card_signup])
  if @card_signup.valid?
    respond_to do |wants|
      #wants.html { redirect_to disclaimer_card_signup_path, :locals => { :card_signup => @card_signup } }
      wants.json { render :json => { :html => (render_to_string :partial => 'disclaimer') } } 
    end
  else
    respond_to do |wants|
      #wants.html { redirect_to new_card_signup_path }
      wants.json { render :json => {:errors => @card_signup.errors, :html => (render_to_string :partial => '/card_signups/new_form') } }
    end
  end
end

Затем происходит сбой и возвращается к исходной форме, но со всеми очищенными формами .

Как я могу сделать так, чтобы поля были как минимум заранее заполнены тем, что они имели в них ранее?

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