के साथ फ़ील्ड दिखाएं मैं ActiveAdmin और Formtastic का उपयोग कर रहा हूं।रेल 3. सशर्त रूप से फॉर्मेटास्टिक
मेरे पास एक चालान फ़ॉर्म है जिसमें शिपमेंट का ड्रॉप डाउन मेनू है।
form do |f|
f.inputs "Shipment Details" do
f.input :shipment_id, :label => "Shipment", :as => :select, :collection => Shipment.find(invoiceless_shipments, :order => "file_number", :select => "id, file_number").map{|v| [v.file_number, v.id] }
f.input :issued_at, :label => "Date", :as => :datepicker
... more fields ...
end
यदि फॉर्म एक नया चालान फॉर्म है तो मैं केवल शिपमेंट के लिए चयन मेनू प्रदर्शित करना चाहता हूं।
यदि फॉर्म एक संपादन फ़ॉर्म है तो मैं शिपमेंट को ड्रॉप डाउन मेनू को प्रदर्शित नहीं करना चाहता हूं। तो यदि फॉर्म एक संपादन फ़ॉर्म है, तो यह बदला नहीं जाएगा।
मैं
if params[:action] != 'edit'
f.input :shipment_id, :label => "Shipment", :as => :select...
end
की तरह कुछ करने के बारे में सोच रहा था लेकिन मैं एक डीएसएल त्रुटि मिलती है।
मेरे सिर के ऊपर, कैसे 'के बारे में जब तक f.object.persisted' –
एक ही समस्या थी बंद enclosing? 'if object.persisted' में फ़ील्ड? 'ब्लॉक मदद की। धन्यवाद। – pduersteler