某些路由适用于CRUD操作,例如客户端,phone_numbers和产品。我有独特的索引'许多模型的属性。例如,在客户端,我可以拥有"电子邮件"或者"用户名",而在产品中,我可以拥有" serialnumber",而在PhoneNumber中,实际的"数字"可能是唯一索引。
因此,我的ApplicationController中有方法在POST请求中接收JSON,其中包含属性名称和属性值。服务器检查该值是否存在,并通知用户输入是否有效或值是否存在。
因此,对于这些模型,我必须声明一条指向" unique"方法,如下面的
的routes.rb
resources :clients
resources :phone_numbers
resources :products
post 'clients/unique' => 'clients#unique'
post 'phone_numbers/unique' => 'phone_numbers#unique'
post 'products/unique' => 'products#unique'
我的问题是:我可以"分组"这些路线没有前缀(与命名空间和范围不同),只需添加帖子' unique'给他们?伪代码就像这样
伪代码
group alias: 'modelsWithUniqueAttrs'
resources :clients
resources :phone_numbers
resources :products
add_route 'unique'
end
答案 0 :(得分:1)
试试这个
resources :clients, :phone_numbers, :products do
collection do
post :unique
end
end
或者
unique_routing = Proc.new do
collection do
post :unique
end
end
resources :clients, &unique_routing
resources :phone_numbers, &unique_routing
resources :products, &unique_routing
或者
unique_routing = Proc.new do
collection do
post :unique
end
end
resources :clients, :phone_numbers, :products, &unique_routing