У меня есть модель с именем 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 () использовать другой префикс для поиска имени пути.
Итак, я Я пытался подойти к проблеме со стороны маршрутизации. Есть ли строка, которую я могу добавить в файл маршрутов, которая позволит мне:
Я знаю, что выхожу с Золотого пути, чтобы сделать это, но Rails не позволяет мне использовать Tes t в качестве имени модели, но это имя, которое пользователи ожидают увидеть в URL-адресе этого ресурса, поэтому я надеюсь, что существуют простые параметры маршрутизации, которые позволяют это сделать.