2011-05-25 9 views
6

मैं रूबी ऑन रेल्स के लिए बहुत नया हूँ, और मैं अभिव्यक्ति की तुलना में अधिक लिखने के लिए कोशिश कर रहा हूँ: एक अपवाद पकड़ा फेंकने रहतातुलना (ERB विचारों में) काम नहीं कर रहा ऑपरेटरों

<% if current_member.photo_limit > 5 %> 

प्रतीक से अधिक त्रुटि। मुझे यकीन नहीं है कि इसे कैसे ठीक किया जाए?

संपादित करें: इस रेल नहीं है, या दृश्य है, इसकी एक रूबी

+1

वास्तविक त्रुटि क्या है? क्या इसे टेक्स्टमैट * (?) में या दृश्य के निष्पादन पर फेंक दिया जा रहा है? – colinross

+0

प्रतिपादन/दृश्य में अपरिभाषित विधि '> 'के लिए शून्य: NilClass – user740387

+0

इसे वास्तव में केवल' रूबी 'के रूप में टैग किया जाना चाहिए और रेल या टेक्स्टमेट – colinross

उत्तर

5

उपयोग <% का निर्माण करता है, तो current_member.photo_limit.to_i> 5%>

त्रुटि से photo_limit से विस्तार नहीं है Integer वर्ग (अपने वास्तव में एक स्ट्रिंग अनुमान लगा), और इसलिए होने मिश्रित में तुलना विधि/एस

कि के बारे में अधिक के लिए, देखें नहीं: http://www.skorks.com/2009/09/ruby-equality-and-object-comparison/

spe आमतौर पर आपको Comparable में मिश्रण करना होगा और <=> विधि को परिभाषित करना होगा।

String.to_i का उपयोग कर ठीक होना चाहिए हालांकि ...

+0

धन्यवाद लेकिन गिनती डीबी तालिका में नहीं है, मुझे इसे मॉडल में संग्रहीत किया गया है (डीबी प्रश्नों को नीचे रखने के लिए) – user740387

+1

इससे कोई फर्क नहीं पड़ता कि यह कहां संग्रहीत है, मॉडल में फोटो_लिमिट परिभाषित कैसे किया गया है? – colinross

संबंधित मुद्दे