Как я могу посетить URL с суффиксом .html - PullRequest
0 голосов
/ 26 января 2010

Моя версия рельсов: 2.3.5 (2.3 +)

Как я могу посетить URL с суффиксом .html? Так же, как localhost:3000/welcome.html (добро пожаловать контроллер).

Я получил ошибки маршрутизации при посещении URL выше. Но это работает, если URL с параметром формата выглядит так:

localhost:3000/welcome?format=html

В маршрутах .rb:

ActionController::Routing::Routes.draw do |map|
  map.root :controller => "welcome"
  map.resources :users
  map.resource :session

  map.connect ':controller/:action/:id'
  map.connect ':controller/:action/:id.:format'
end

Но, но я нашел localhost:3000/users.html работает.

Ответы [ 2 ]

1 голос
/ 26 января 2010

Вы можете попробовать это:

map.connect ':controller.:format', :action => :index
1 голос
/ 26 января 2010

Используйте этот маршрут для подключения к контроллеру:

map.connect "welcome.html", :controller => :welcome, :action => :index

Имеется ли значение .html, не имеет значения для целей маршрутизации, оно подобно любому другому пути, соединяющему с любым другим контроллером. Поэтому нет необходимости модифицировать ваш контроллер для этого.
Использование format=html приводит к параметру, поэтому контроллер может возвращать конкретный тип результата, который вам не подходит в зависимости от вашего вопроса.

По вашей информации, это (разрешив .html в ваших путях) автоматически реализуется при создании маршрутов методом map.resources. Так как это работает для пользователей в вашем примере.

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