मेरे रेल 3.2.6 ऐप में, मेरे पास एक विजेट है जो विजेट के बारे में डेटा संग्रह का प्रतिनिधित्व करता है। मेरे दिमाग में, इस वर्ग के लिए सही नाम WidgetData
है, बहुवचन, क्योंकि मेरे पास प्रति विजेट डेटा के एक से अधिक आइटम हैं।रेल डेटा/डाटाम इन्फ्लिक्शन समस्या
अगर मैं रेल पूछना इस वर्ग के लिए एक फ़ॉर्म जनरेट करें:
= form_for @widget_data do |f|
...
मैं एक त्रुटि ActionView::Template::Error (undefined method 'widget_datum_path' ...
मिलता है। संभवतः यह रेल डेटा/डाटाम इन्फ्लिक्शन नियम की वजह से है।
मुझे यकीन है कि इसे हल करने के लिए सबसे अच्छा तरीका है: मैं रेल को यह निर्देश दे सकता हूं कि मेरा मॉडल वास्तव में WidgetDatum
होना चाहिए। या मैं इस विशेष मामले में किसी भी तरह से इन्फ्लिक्शन नियम के उपयोग को अक्षम कर सकता हूं, लेकिन मुझे यकीन नहीं है कि यह कैसे करना है। सलाह स्वागत है।
एक संभावित जवाब की आशा करने के लिए: कारण यह है कि मॉडल बस Widget
नहीं कहा जाता है कि मैं एक बहाना वर्ग कि पहले से ही नाम है, जो एक विजेट दोनों WidgetData
और अन्य जानकारी को शामिल रूप में अच्छी तरह का अधिक समृद्ध दृश्य प्रस्तुत करता है।
यह शायद inflect.irregular 'widget_data' होना चाहिए – 0x4a6f4672