Ruby on rails 特定功能多路线与单路线
我有一个rails应用程序,允许管理员处理电子退款。我遇到了一个问题,复杂性呈指数级增长,因为我给了用户更多的地方开始退款。我的路线越来越疯狂,我知道必须有更好的方法 假设用户可以在整个应用程序的4个不同位置处理退款。这给了我12条示例路线:Ruby on rails 特定功能多路线与单路线,ruby-on-rails,ruby-on-rails-4,Ruby On Rails,Ruby On Rails 4,我有一个rails应用程序,允许管理员处理电子退款。我遇到了一个问题,复杂性呈指数级增长,因为我给了用户更多的地方开始退款。我的路线越来越疯狂,我知道必须有更好的方法 假设用户可以在整个应用程序的4个不同位置处理退款。这给了我12条示例路线: get 'organization/:organization_id/invoices/refunds, to: 'refunds#index' get 'organization/:organization_id/invoices/refunds/n
get 'organization/:organization_id/invoices/refunds, to: 'refunds#index'
get 'organization/:organization_id/invoices/refunds/new, to: 'refunds#new'
post 'organization/:organization_id/invoices/refunds, to: 'refunds#create'
get 'agency/:agency_id/invoices/refunds, to: 'refunds#index'
get 'agency/:agency_id/invoices/refunds/new, to: 'refunds#new'
post 'agency/:agency_id/invoices/refunds, to: 'refunds#create'
get 'destination/:destination_id/refunds, to: 'refunds#index'
get 'destination/:destination_id/refunds/new, to: 'refunds#new'
post 'destination/:destination_id/refunds, to: 'refunds#create'
get 'dashboard/refunds, to: 'refunds#index'
get 'dashboard/refunds/new, to: 'refunds#new'
post 'dashboard/refunds, to: 'refunds#create'
这些都将指向同一个控制器,这意味着在我的视图中,我需要一些非常抽象的多态路径用于退款表单和随后重定向到函数
除了这些乱七八糟的东西,如果我增加更多退款的地方,这些东西只会变得更乱七八糟,还有更好的解决办法吗?使用单一服务路由处理所有请求是否有任何不利之处:
get 'refunds/new, to: 'refunds#new'
post 'refunds, to: 'refunds#create'
然后,无论退款从何处开始,他们都会在以下位置结束:
http://mydomain/refunds/new
似乎最好让每个退款表单都有这样的uri上下文
http://mydomain/organizations/89/invoices/refunds/new
http://mydomain/dashboard/refunds/new
…但复杂性正在失控。有什么想法吗?看来你是在重新创造。@Jordan我键入上述路线的方式与routes.rb中的显示方式不同。它们是嵌套的,但当倾斜时,它们就是这样显示的。当然,它们也都有自己的名称:组织机构、发票、退款路径、仪表板、退款路径等等。我的问题是,为每条路线提供单一视图所涉及的复杂性。