मैं एक विधि same_url बुलाया इच्छुक रहा हूँ? यदि पारित यूआरएल बराबर हैं तो यह सच हो जाएगा। पारित यूआरएल या तो पैरा विकल्प विकल्प हैश या तार हो सकता है।रेल में सबसे अच्छा तरीका निर्धारित करने के लिए (तार या हैश विकल्प के रूप में) दो (या अधिक) दिए गए यूआरएल के बराबर हैं क्या है?
same_url?({:controller => :foo, :action => :bar}, "http://www.example.com/foo/bar") # => true
रेल फ्रेमवर्क सहायक current_page? एक अच्छा प्रारंभिक बिंदु की तरह लगता है, लेकिन मैं यूआरएल की एक मनमाना संख्या में पारित करने के लिए करना चाहते हैं।
एक अतिरिक्त बोनस के यह अच्छा होगा अगर पैरामीटर के हैश को बाहर करने से तुलना में पारित किया जा सकता है के रूप में तो एक विधि कॉल लग सकती है:।
same_url?(projects_path(:page => 2), "projects?page=3", :excluding => :page) # => true
मैं अपने उदाहरण में देख रहा हूँ आप एक स्ट्रिंग यूआरएल पारित किया जा रहा है, लेकिन आप अभी भी पृष्ठ पैरामीटर खत्म करने के लिए बाहर रखा की उम्मीद है। मैं रूटिंग मॉड्यूल का उपयोग करके इसे हैश में पार्स कर दूंगा, और केवल हैश के साथ काम करता हूं। रेल की – kch