2012-12-18 17 views
8

मैंने अपना फॉर्म रिमोट में बदल दिया है, और जब फॉर्म अब काम करता है, तो कोई त्रुटि होने पर त्रुटि संदेश प्रदर्शित नहीं होते हैं।जेएस फॉर्म रेल के साथ त्रुटि संदेश प्रस्तुत करें

<%= render 'shared/error_messages' %> 

संदेश फिर से दिखाने के लिए एक अच्छा पहनना है?

नीचे मेरा नियंत्रक है ...

धन्यवाद।

respond_to do |format| 
    if @post.save 
    format.js { render :js => "window.location = '#{edit_post_path @post}'" } 
    format.html { redirect_to [:edit, @post] } 
    else 
    format.js { render :js => @post.errors } 
    format.html { redirect_to '/', :error => "Could not save comment" }  
    end 
end 

उत्तर

12
respond_to do |format| 
    if @post.save 
    format.js { render :js => "window.location = '#{edit_post_path @post}'" } 
    format.html { redirect_to [:edit, @post] } 
    else 
    format.js { } 
    format.html { redirect_to '/', :error => "Could not save comment" }  
    end 
end 

# update.js.erb 

$(document).find("form").prepend('<%= escape_javascript(render("shared/error_messages", :formats => [:html])) %>'); 
+0

धन्यवाद! यह काम करता है :) – user749798

+0

जब आप चिपकने लगते हैं तो यह थोड़ी गड़बड़ी हो जाती है अगर किसी और चीज में update.js.erb की स्थिति को संभालने की कोशिश कर रहा है कि मॉडल सहेजा गया था या नहीं – Donato

संबंधित मुद्दे

 संबंधित मुद्दे