Pha*_*ale 10 rest routing ruby-on-rails rails-routing
我有一个名为的模型ImplicitTest.它被称为有一个Ruby对象,Test只是在Rails中打破了很多东西.
但是,我仍然希望将其作为RESTful资源公开test(例如/tests,/test/1/edit依此类推).此外,保持控制器的效果会很好TestsController,尽管不那么重要.
我通过resources :tests在routes.rb文件中使用简单的行来实现这一点,但这对于RESTful表单来说是失败的(例如<%= form_for @test ... >- 这会发现@test对象的类型为ImplciitTest,并尝试查找implicit_test_path不存在的行.
我尝试添加form_for选项,但得出的结论是,为了使表单适用于两者new和edit操作,没有一种单一,统一的方式要求form_for()使用不同的前缀进行路径名查找.
所以我一直试图从路由方面解决问题.有没有我可以添加到路径文件的行,这将允许我:
我知道我正在离开Golden Path来做这件事,但Rails并没有让我使用Test作为模型名称,但这是用户希望在此资源的URL中看到的名称,所以我希望有是启用此功能的简单路由选项.
您需要做的就是:path在路线上设置选项:
resources :implicit_tests, :path => '/test'
Run Code Online (Sandbox Code Playgroud)
您仍然会以implicit_tests_path这种方式使用标准帮助程序,因此您的代码不必分散以更改URL方案.