Я делаю пользовательскую форму AJAX.
Если пользователь заполняет половину формы, он не сможет выполнить другую половину.
По какой-то странной причине формапредварительно не заполняется, по крайней мере, тем, что они уже ввели.
Поскольку он этого не делает, как я могу вручную сказать, чтобы он это сделал?Когда форма возвращается, проверенный ею объект все еще доступен, поэтому я могу снять с нее информацию.
образец формы
- form_for CardSignup.new do |f|
- unless @card_signup.nil?
- if !@card_signup.errors.empty?
.prefix_1.grid_4
- @card_signup.errors.full_messages.each do |error|
.warning
= error
%br/
.grid_2.prefix_1{:style => "width: 166px;"}
= f.text_field :first_name, :style => "width: 166px;", :value => "first name", :rel => "first name"
%div{:class => 'error_message'}
Мой метод создания
def create
if params[:user] && current_user.admin
@card_signup = User.find(params[:user]).build_card_signup(params[:card_signup])
else
@card_signup = current_user.build_card_signup(params[:card_signup])
end
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