Маршрут в рельсах не находит строку запроса для главной страницы индекса - PullRequest
0 голосов
/ 08 марта 2012

Я хочу создать URL для индекса со строкой запроса, но мне не удается это сделать. Нужна помощь, спасибо!

Если я использую вспомогательный метод для создания URL:

link_to 'Movie Title', movie_path(:sort_by=>'title')

Я получаю ошибку маршрутизации:

"No route matches {:action=>"show", :controller=>"movies", :sort_by=>:title}"

Однако это работает, когда я использую его с : id , но я получаю URL для фильмов /: id / sort_by = title, и я не хочу этого:

link_to 'Movie Title', movie_path(1,:sort_by=>'title')

Мой вывод по рейк-маршрутам:

    movies GET    /movies(.:format)          {:action=>"index", :controller=>"movies"}
           POST   /movies(.:format)          {:action=>"create", :controller=>"movies"}
 new_movie GET    /movies/new(.:format)      {:action=>"new", :controller=>"movies"}
edit_movie GET    /movies/:id/edit(.:format) {:action=>"edit", :controller=>"movies"}
     movie GET    /movies/:id(.:format)      {:action=>"show", :controller=>"movies"}
           PUT    /movies/:id(.:format)      {:action=>"update", :controller=>"movies"}
           DELETE /movies/:id(.:format)      {:action=>"destroy", :controller=>"movies"}

1 Ответ

6 голосов
/ 08 марта 2012

movie_path для одного фильма - если вы хотите получить список, вы должны использовать movies_path

Посмотрите здесь: http://guides.rubyonrails.org/routing.html#resource-routing-the-rails-default

edit: добавлена ​​ссылка

...