2010-12-08 11 views
8

रेल 3 में मैं कुछ इस तरह कर सकते हैं:रेल 2.3.x बराबर पैरामीटर

match "/page(/:section)", :to => 'some_controller#page' 

और दोनों /page और /page/some_section some_controller # पेज

करने के लिए नक्शे होगा वहाँ के एक बराबर है रेल में 2.3.x ?? मुझे लगता है नहीं कर पा रहे यह

मैं वर्तमान में तो जैसे दो अलग-अलग मार्ग तरीकों का उपयोग कर रहा हूँ: अगर आप एक डिफ़ॉल्ट मान निर्दिष्ट

map.page   '/page',   :action => 'page' 
map.page_section '/page/:section', :action => 'page' 
+0

आप नक्शा लिख ​​सकते हैं। "पृष्ठ" और नक्शा कनेक्ट करें "पृष्ठ /: अनुभाग" अलग नियमों के रूप में। –

+0

ने उल्लेख किया होगा कि मैं वर्तमान में उपयोग कर रहा हूं, और अधिक terse वाक्यविन्यास – brad

उत्तर

14

एक पैरामीटर वैकल्पिक हो जाता है।

map.page '/page/:section', :action => 'page', :section => "default" 

यदि :section मौजूद है, तो मूल्य वर्तमान मूल्य होगा। अन्यथा, यह default पर डिफ़ॉल्ट होगा और राउटर शिकायत नहीं करेगा।

आप मान को nil पर भी डिफ़ॉल्ट कर सकते हैं।

map.page '/page/:section', :action => 'page', :section => nil 
+0

की तलाश कर रहा हूं ताकि मेरे पास अभी भी मेरे नियंत्रक में पैरामीटर [: section] = 'default' हो? – brad

+0

क्या मेरा डिफ़ॉल्ट मान 'nil' हो सकता है? – brad

+1

अपने स्वयं के प्रश्न का उत्तर देने के लिए, सेटिंग:: section => nil' ने काम किया। धन्यवाद! – brad

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