Атрибут: as в моей корневой строке в config / rout.rb портит мое приложение. Что с этим не так? - PullRequest
0 голосов
/ 24 января 2011

У меня есть модель и контроллер с именем coves_controller. У меня есть эта строка в моем файле rout.rb прямо сейчас: root: to => 'coves # index',: as => 'coves'

Когда я комментирую это и захожу на localhost: 3000 / coves, все работает отлично. Когда я раскомментирую его, я не могу создать новый объект бухты. Нет сообщения об ошибке, оно просто не добавляется в базу данных.

Когда я в конце изменяю «бухты» на «бухты», я могу создавать новые объекты бухты, но после этого меня направляют в бухты / .5, которые должны быть бухтами / 5

Ответы [ 2 ]

3 голосов
/ 24 января 2011

Если вы посмотрите , как определяется корневой путь , это просто удобный метод, который создает для вас именованный маршрут. Метод reverse_merge, используемый для загрузки опций, означает, что ваша часть хеша :as => 'coves' будет игнорироваться и будет изменена на :as => :root. Вы не можете переименовать корневой путь при использовании метода root.

Как сказал @apneadiving, вам нужно использовать resources :coves для получения маршрутов RESTful CRUD для него.

2 голосов
/ 24 января 2011

Я думаю, что есть конфликт с путями, созданными:

 resources :coves

Это основное поведение REST.

Не добавляйте оператор «as» для своего пользователя root, root - это просто root :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...