object_id का उपयोग मैं केविन Skoglund ट्यूटोरियल रेल 3 आवश्यक प्रशिक्षण, जिसके लिए लिखा गया था पर रूबी अनुसरण कर रहा हूँ रेल 3.0, हालांकि मैं वर्तमान में 3.2 का उपयोग कर रहा हूं। यह पृष्ठों_ नियंत्रक में निम्न विधि का उपयोग पहले_फिल्टर के साथ करता है ताकि केवल मूल विषय से संबंधित पृष्ठ प्रदर्शित हो सकें।3.0/3.2 रेल: कहा जाता है शून्य के लिए आईडी है, जो गलती से 4 होगा - यदि आप वास्तव में नहीं के बराबर की आईडी चाहता था,
ट्यूटोरियल स्पष्ट .find_by_id का उपयोग करता है, तो परिणाम यह नहीं के बराबर है "एक त्रुटि नहीं लौटेगा" क्योंकि। हालांकि मुझे "नील के लिए बुलाया गया आईडी मिलता है, जो गलती से 4 होगा - यदि आप वास्तव में शून्य की आईडी चाहते हैं, तो ऑब्जेक्ट_आईडी का उपयोग करें" त्रुटि को उस पृष्ठ को देखने का प्रयास करते समय @ subject को शून्य पर सेट किया गया है।
def find_subject
if params[:subject_id]
@subject = Subject.find_by_id(params[:subject_id])
end
end
वास्तविक कोड है कि त्रुटि पैदा कर रहा है:
def list
@pages = Page.order("pages.position ASC").where(:subject_id => @subject.id)
end
यह कुछ 3.0 बाद हुए बदलावों को है? यदि हां, तो 3.2 में इस कार्यक्षमता को लागू करने का सही तरीका क्या होगा?
त्रुटि दिखाते हुए कोड के साथ प्रश्न अद्यतन किया – Nick5a1