我的config/routes.rb
中的一个条目:
get "enumerators/job_type", to: "enumerators#job_type"
正如您所看到的,控制器中对应的URL路径和方法名称是相同的。在这种情况下,Rails是否提供了简写?
答案 0 :(得分:1)
是的!只要您的控制器名称为get "enumerators/job_type"
且方法为EnumeratorsController
job_type
请记住,您始终可以通过运行bundle exec rake routes
答案 1 :(得分:1)
您可以使用如下所示的命名空间:
namespace :enumerators do
get "job_type"
end
命名空间的更多信息:
http://guides.rubyonrails.org/routing.html#controller-namespaces-and-routing
答案 2 :(得分:1)
将两个答案混合在一起,这是进行路由的最差方式的最佳方法:
最佳
const store = createStore(rootReducer)
const App = () => (
<Provider store={store} >
<BrowserRouter history={history}>
<Switch>
<Route exact path='/' component={WelcomeScreen} />
<Route path='/main' component={StudiosList} />
</Switch>
</BrowserRouter>
</Provider>
)
更糟
namespace :enumerators do
get "job_type"
get "something_else"
end
最差
get "enumerators/job_type"
get "enumerators/something_else"