我如何确定资源的范围,以便确定路径助手的范围?
How can I scope a resource so that the path helpers are scoped?
超级简单的目标似乎没有很好的记录,我想确定资源的范围并让路径 (& url) 助手生成范围内的路径。
即:
scope :info do
resources :publications
end
publications_path => '/info/publications'
publication_path => '/info/publications/:id'
edit_publication_path => '/info/publications/:id/edit'
我什至可以使用 'info_' 带前缀的路径助手,但它们不会被生成。那么让这项工作成功的秘诀是什么?
rake routes 给出:
Prefix Verb URI Pattern Controller#Action
publications GET /publications(.:format) publications#index
POST /publications(.:format) publications#create
new_publication GET /publications/new(.:format) publications#new
edit_publication GET /publications/:id/edit(.:format) publications#edit
publication GET /publications/:id(.:format) publications#show
PATCH /publications/:id(.:format) publications#update
PUT /publications/:id(.:format) publications#update
DELETE /publications/:id(.:format) publications#destroy
GET /info/publications(.:format) publications#index
POST /info/publications(.:format) publications#create
GET /info/publications/new(.:format) publications#new
GET /info/publications/:id/edit(.:format) publications#edit
GET /info/publications/:id(.:format) publications#show
PATCH /info/publications/:id(.:format) publications#update
PUT /info/publications/:id(.:format) publications#update
DELETE /info/publications/:id(.:format) publications#destroy
当我看到你的 rake routes
输出时,我只能猜测,但我确信你有重复的 resources :publications
.
我想你有
resources :publications
....
scope :info do
resources :publications
end
第一行生成发布资源,你得到
publications_path => 'publications'
然后
publications_path
已被占用,您的
/info/publications
没有方法名
超级简单的目标似乎没有很好的记录,我想确定资源的范围并让路径 (& url) 助手生成范围内的路径。
即:
scope :info do
resources :publications
end
publications_path => '/info/publications'
publication_path => '/info/publications/:id'
edit_publication_path => '/info/publications/:id/edit'
我什至可以使用 'info_' 带前缀的路径助手,但它们不会被生成。那么让这项工作成功的秘诀是什么?
rake routes 给出:
Prefix Verb URI Pattern Controller#Action
publications GET /publications(.:format) publications#index
POST /publications(.:format) publications#create
new_publication GET /publications/new(.:format) publications#new
edit_publication GET /publications/:id/edit(.:format) publications#edit
publication GET /publications/:id(.:format) publications#show
PATCH /publications/:id(.:format) publications#update
PUT /publications/:id(.:format) publications#update
DELETE /publications/:id(.:format) publications#destroy
GET /info/publications(.:format) publications#index
POST /info/publications(.:format) publications#create
GET /info/publications/new(.:format) publications#new
GET /info/publications/:id/edit(.:format) publications#edit
GET /info/publications/:id(.:format) publications#show
PATCH /info/publications/:id(.:format) publications#update
PUT /info/publications/:id(.:format) publications#update
DELETE /info/publications/:id(.:format) publications#destroy
当我看到你的 rake routes
输出时,我只能猜测,但我确信你有重复的 resources :publications
.
我想你有
resources :publications
....
scope :info do
resources :publications
end
第一行生成发布资源,你得到
publications_path => 'publications'
然后
publications_path
已被占用,您的
/info/publications
没有方法名