Wednesday 15 January 2014

ruby on rails - Creating a nested model for "new" action in a controller -


मेरे पास एक मॉडल है:

  वर्ग MyModel & lt; ActiveRecord :: बेस attr_accessible # ..... is_to: मालिक अंत   

और एक नियंत्रक की कार्रवाई है:

  def new @ data1 = MyModel नया अंत   

और एक दृश्य:

  = f.select: owner_id, options_from_collection_for_select (MyModel.some_scope,: id,: full_name, @ data1.owner .id)   

जाहिर है, @ data1.owner.id खाली है मैं इसे कैसे "गैर-रिक्त" कर सकता हूं?

कारण यह है कि @ data1.owner .id रिक्त है क्योंकि @ data1 के स्वामी नहीं हैं।

आप इस लाइन को अपने नियंत्रक में नई क्रिया में जोड़कर एक जनरेट कर सकते हैं:

  @ data1.create_owner   

जहां आप इस पद्धति में दिए गए तर्क आपके स्वामी के गुण हैं। उदाहरण के लिए, उनके पास मारियस का प्रथम_नाम हो सकता है:

  @ data1.create_owner (प्रथम_नाम: 'मारियस')   

यह देखते हुए कि आप यह कर रहे हैं नई विधि में, जब तक कि आपको मालिक के लिए किसी विशेष गुण पर कुछ नॉन-रिक्त बाधाएं नहीं मिलें, मुझे लगता है कि आप इसे खाली छोड़ने के लिए शायद ही छोड़ सकते हैं

इस स्वामी को @ data1 के लिए बनाने से इसे आईडी के साथ आबाद करना चाहिए, जिससे @ data1.owner.id "खाली-खाली"।

No comments:

Post a Comment