[英]Rails routing like github
我正在使用Rails 3.2
我希望路由幾乎和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
如果你想擺脫id號碼(這是rails默認值)並使用一個名字,我建議使用FriendlyId gem。
觀看這個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
您必須使用friendly_id和scope
scope '/:username/:projectname', module: 'users/projects', as: 'users_project' do
resources :issus
resources :photos
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.