5

की तरह मार्ग मैं रेल उपयोग कर रहा हूँ 3.2रेल GitHub

मैं काफी वास्तव में GitHub की तरह मार्ग है चाहते हैं, इसलिए:

root/(username) 
root/(username)/(projectname) 
root/(username)/(projectname)/issus 

आदि

मैं कुछ इस तरह कोशिश कर रहा हूँ:

resources :publishers do 
    resources :magazines do 
    resources :photos 
    end 
end 

लेकिन इससे इस तरह के मार्ग मिलते हैं:

/publishers/1/magazines/2/photos/3 

एक परियोजना जो मैं देख रहा हूं वह निम्नलिखित काम करता है जो काम करता है लेकिन मेरे लिए प्रतीत नहीं होता है।

resources :projects, :constraints => { :id => /[^\/]+/ }, :except => [:new, :create, :index], :path => "/" do 
member do 
    get "team" 
    get "wall" 
    get "graph" 
    get "files" 
end 

resources :wikis, :only => [:show, :edit, :destroy, :create] do 
    member do 
    get "history"   
    end 
end 

उत्तर

4

आप आईडी नंबर (जो रेल डिफ़ॉल्ट है) से छुटकारा और एक नाम का उपयोग करना चाहते हैं तो मैं FriendlyId मणि सुझाव देते हैं।

घड़ी इस railscast http://railscasts.com/episodes/314-pretty-urls-with-friendlyid

और यहाँ GitHub पेज https://github.com/norman/friendly_id

संपादित

है यह लेख मैं खोज रहा था है, मैं भूल गया था कि मैं इसे महीने पहले बुकमार्क किए गए। http://jasoncodes.com/posts/rails-3-nested-resource-slugs

+0

दिलचस्प लगता है चाहिए। मुझे उस रेलवे को देखना होगा। मुझे आश्चर्य है कि यह आंतरिक रूप से कैसे संग्रहीत किया जाता है, और यदि एक अलग डेटाबेस मामलों का उपयोग कर रहा है। – Ron

+1

यह अच्छा है। बिल्कुल वही नहीं जो मैं चाहता हूं लेकिन सहायक होगा। मैं और अधिक देख रहा हूं कि जीथब कैसे काम करता है। ताकि आपको यूआरएल/यूज़ोन/जोनोवोनो जैसे यूआरएल की आवश्यकता न हो, बल्कि इसके बजाय बस/जोनोवोनो काम करता है। – Jonovono

+1

http://stackoverflow.com/questions/2968722/github-url-style –

0

आप friendly_id और गुंजाइश उपयोग करने के लिए

scope '/:username/:projectname', module: 'users/projects', as: 'users_project' do 
    resources :issus 
    resources :photos 
end