У меня есть PostsController, который не является существенным для примера, но поможет, когда я вставляю фрагменты, и я использую current_page?
, чтобы, как следует из названия, выяснить, какая страница отображается. Я получаю то, что кажется странным результатом.В чем разница между example.com/controller и example.com/controller/ в Rails?
current_page?
вернет различные ответы, если я перейду к /posts
против /posts/
.
В качестве теста на индексном для моего контроллера я просто позвонив
current_page?(:action => 'index')
Если я иду/контроллер (без слэша), current_page?
возвращает истину. Однако, если я перейду в/controller /, он вернет false.
Tailing журнал показывает, что оба делают на самом деле попал в такое же действие
Processing PostsController#index (for 127.0.0.1 at 2009-08-11 18:28:12) [GET]
Parameters: {"action"=>"index", "method"=>:get, "controller"=>"posts"}
Действие производит те же результаты для обоих, как и следовало ожидать.
Я использую Rails 2.3.2 и this ticket - единственное, что кажется близким. Единственный комментатор считает, что current_page должен «считать два URL-адреса одной и той же страницей, если они оба относятся к одному и тому же объекту RESTful».
Спасибо за любое понимание этого.
Это имеет смысл. Должен ли, вероятно, проверить источник текущей_страницы? Большое спасибо! – theIV