2011-02-14 14 views
5

मैं वर्तमान में यूआरएल है जो इस तरह दिखेगा:बनाना एसईओ अनुकूल यूआरएल 3

things?category_id=6&country_id=17 

और मैं URL जो कि इस तरह दिखना करना चाहते हैं:

/printer_cartridges/united_kingdom 

वहाँ में एक रास्ता है 3 रेल, कठिन श्रेणियों और रूटर के देशों के सभी कोडिंग यूआरएल के रूप में मैं ऊपर चाहते हैं, शायद find_by_name या इस तरह की तरह का उपयोग कर के लिए बिना? इस तक पहुंचने का सबसे अच्छा तरीका क्या है? [: Category_slug] और पैरामीटर [: country_slug] के बजाय आईडी

+3

, मार्ग पर रेल गाइड पढ़ें विशेष रूप से नेस्टेड संसाधन: http://guides.rubyonrails.org/routing.html#nested-resources – Dominic

उत्तर

4
match '/:category_slug/:country_slug', :to => 'things#index' 

तो फिर तुम सब कुछ का उपयोग कर पैरामीटर को देखने के लिए अपनी कार्रवाई को अपडेट करना होगा। slugged gem को देखो मल उत्पन्न करने के लिए।

+1

Sutto के slugged मणि इस पर जाने के लिए रास्ता है। धन्यवाद जोर्डन। – Gav

3

अपने वर्ग मॉडल में विधि

def to_param 
    "#{category_name.parameterize}/#{location_name.parameterize}" 
end 

जहां CATEGORY_NAME और LOCATION_NAME हैं जहां इनपुट आप संग्रहीत नाम है जहां जोड़ें।

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