我有两个模型:Book
和Magazine
。在属性方面几乎没有差异,但我希望它们共享相同的控制器和视图(Book&#39的模型)。
我的问题是:在routes.rb中设置Magazine模型路线的正确方法是什么,考虑到Book已经设置为以下resources :books
这是一个基本问题,但我想学习最好的方法,而不是逐个手动定义所有路线
谢谢!
答案 0 :(得分:4)
您可以将资源路由配置为指向特定控制器:
resources :books
resources :magazines, controller: 'books'
这将创建以下路线:
books GET /books(.:format) books#index
POST /books(.:format) books#create
new_book GET /books/new(.:format) books#new
edit_book GET /books/:id/edit(.:format) books#edit
book GET /books/:id(.:format) books#show
PATCH /books/:id(.:format) books#update
PUT /books/:id(.:format) books#update
DELETE /books/:id(.:format) books#destroy
magazines GET /magazines(.:format) books#index
POST /magazines(.:format) books#create
new_magazine GET /magazines/new(.:format) books#new
edit_magazine GET /magazines/:id/edit(.:format) books#edit
magazine GET /magazines/:id(.:format) books#show
PATCH /magazines/:id(.:format) books#update
PUT /magazines/:id(.:format) books#update
DELETE /magazines/:id(.:format) books#destroy
答案 1 :(得分:0)
还要考虑一些多态关系,我认为最终你最终会得到这个。