मेरे पास वर्तमान में कुछ रूप हैं जो मैं उस बटन को बदलने की कोशिश कर रहा हूं जो इसे संपादित करता है अगर मैं संपादन या नई कार्रवाई पर हूं। मेरे पास दो रूपों का निर्माण हुआ था, लेकिन यह खराब हो गया, और अब मैं सिर्फ एक ही आंशिक आंशिक उपयोग कर रहा हूं।रेल 3 - फॉर्म, कस्टम सबमिट बटन कार्रवाई के आधार पर?
मेरी आंशिक के अंत में, मैं अपने रूपों के अंत में कुछ इस तरह है:
<p>
<% if controller.action_name == 'new' %>
<%= f.submit "Create", :class => "pink_button"%> or
<% elsif controller.action_name == 'edit' %>
<%= f.submit "Update", :class => "pink_button"%> or
<% end %>
<%= link_to "cancel", :back %>
</p>
इस तरह, अगर मैं कुछ नए बना रहा हूं, बटन लिखा है "बनाएँ", और अगर यह एक अद्यतन है जिसे उपयोगकर्ता पूरा करने का प्रयास कर रहा है, बटन "अपडेट" पढ़ता है। जब तक फ़ॉर्म सबमिट नहीं किया जाता है और सत्यापन विफल रहता है, यह बहुत अच्छा काम करता है।
def update
@list = current_user.lists.find(params[:id])
if @list.update_attributes(params[:list])
redirect_to list_path(@list), :notice => "List '#{@list.name}' updated."
else
render :action => 'edit'
end
end
तो प्रपत्र बस फिर से प्रदान की गई है:
मेरी नियंत्रक में, मैं चीजें हैं जो इतना तरह असफल है पकड़ने कर रहा हूँ। समस्या यह है कि, मैं अब संपादन पथ पर नहीं हूं। इसका मतलब है, मेरा फॉर्म बटन अब और प्रदर्शित नहीं होता है।
क्या मैं ऐसा करने का प्रयास कर रहा हूं?
धन्यवाद
धन्यवाद समीर! मैंने आपके सुझाव का उपयोग इस प्रकार किया: <% = f.submit @ chore.new_record? ? "अपने कोर को पोस्ट करें": "अपने कोर को अपडेट करें",: class => "marginTopBottom"%> –