2012-02-19 8 views
0

Примечание: приложение использует Rails 3.2.1 и Ruby 1.9.3.Rails route issue with Phusion Passenger/Apache2

Я пытаюсь настроить приложение rails с помощью Passenger и Apache 2. Когда приложения изначально создаются, он загружает страницу рельсов по умолчанию с использованием файла index.html по умолчанию в/public.

Проблема возникает, когда я запускаю rails generate controller home index и удаляю файл index.html. Затем в файле routes.rb я добавил root :to => "home#index". Затем я получаю сообщение об ошибке «Мы сожалеем, но что-то пошло не так».

В моем журнале ошибок указано File does not exist, и когда я добавляю обратно в index.html, он снова загружается.

Так что, похоже, он все еще ищет файл index.html даже после его удаления.

Я, вероятно, отсутствует что-то очень очевидное, так что любая помощь очень ценится

+0

Можете ли вы предоставить нам полную статистику стека из вашего журнала производства? – iltempo

+0

systho, я прошу прощения за отсутствие ответа. К сожалению, это не сработало. Я могу снова попробовать ваше решение, поскольку это всегда возможно, я что-то упустил, но пока он остается сломанным. – Ian

ответ

1

Так как вы определили ваш корень "home#index", вы должны иметь HomeController с индексным методом и вид, расположенный в app/views/home/index.html.erb

Обычно метод контроллера «подготавливает» данные для представления, и это означает, что большинство методов контроллера заканчивается вызовом render, предоставляя ему параметры для представления.

Этот шаблон настолько обычен, что вам не нужно вызывать рендер, если вы просто хотите отобразить стандартный вид. И стандартный вид находится в app/views/[controller_name]/[action_ame](.[request_format])(.[precompilation_format)

Если у вас старый файл index.html в общей папке, тогда статический файл обслуживается, и ваш контроллер не запускается. Если у вас нет этого файла, ваш контроллер запускается, и ваш индексный метод теперь пытается найти «индексный» файл, но в app/views/home/index.

request_format не является обязательным условием и обычно опущен, если ваш сайт является только html. он становится полезным, когда ваши действия могут либо реагировать с HTML, JSON, XML, ...

precompilation_format обычно эрбом для HTML request_format но есть много больше (Haml, Рабля, строителя, ...)

 Смежные вопросы

  • Нет связанных вопросов^_^