2012-04-15 2 views
0

가계와 모델에 대한 경로를 레일내가 모델 카테고리가

class Item < ActiveRecord::Base 
    has_many :item_categories, :dependent => :destroy 
    has_many :categories, :through => :item_categories, :uniq => true 
end 

내가이 보석 사용 - 그래서 https://github.com/stefankroes/ancestry

을, 사이트의 URL이 될 수 있습니다 :

/category-slug/ - "categories#show" 
/category-slug/subcategory-slug 
/category-slug/subcategory-slug/subsubcategory-slug 
/category-slug/item-slug - "items#show" 
/category-slug/subcategory-slug/item-slug 
/category-slug/subcategory-slug/subsubcategory-slug/item-slug 

이 URL의 경로는 어떻게 생깁니 까? 그리고 그것은 가능한가?

답변

0

나는 당신이 만드는 제안이 같은 문제 : 나는 다음과 같은 경로로이 문제를 해결 할

/category1/ - "categories#show" 
/category1/category2 
/category1/category2/category3 
/category1/item - "items#show" 
/category1/category2/item 
/category1/category2/category3/item-slug 

:

resources :categories do 
    resources :categroies 
    resources :items 
end 

이 제공 :

category_categroie GET /categories/:category_id/categroies/:id(.:format) {:action=>"show", :controller=>"categroies"} 
    category_item GET /categories/:category_id/items/:id(.:format)  {:action=>"show", :controller=>"items"} 
      category GET /categories/:id(.:format)       {:action=>"show", :controller=>"categories"} 

이 여섯 해결 문제 :

/categories/1 
/categories/1/categories/2 
/categories/2/categories/3 
/categories/1/item/4 
/categories/2/item/5 
/categories/3/item/6 

아마도이 솔루션으로 프로그램을 사용할 수 있습니다.