Рельсы / Стойка / Config.ru

#ruby-on-rails #rack #webrick

#ruby-on-rails #стеллаж #веб-кирпич

Вопрос:

Пытаюсь следовать «Ruby on Rails 3 Tutorial» и запускаю rails s , получаю следующую ошибку:

 [path]config.ru:1 in 'require': no such file to load -- fake_app
  

У меня есть местоположение fake_app.rb в ПУТИ (которое, я полагаю, и пытается найти rails / rack)

Содержимое config.ru генерируется по умолчанию:

 require "fake_app"

run Rack::Test::FakeApp
  

Я использую rails 3.0.8 и Windows 7

Спасибо, что помогли этому законченному новичку!

Комментарии:

1. Вы могли бы попробовать заменить свою require строку на require ::File.expand_path('../config/environment', __FILE__) и посмотреть, работает ли это лучше? Если это избавит вас от ошибки в строке 1, возможно, вам потребуется заменить строку 2 на Run FakeApp::Application

2. Кстати, мой ответ был вполне в духе «ответа новичка» — я не эксперт в правильной структуре config.ru файла, я просто просмотрел свой старый каталог проекта Rails 3 Tutorial и обнаружил, что именно так он был настроен 🙂

Ответ №1:

Вы сгенерировали это с помощью rails new [appname] команды? Файл Rails 3.0 config.ru по умолчанию должен выглядеть примерно так:

 require ::File.expand_path('../config/environment', __FILE__)
run ApplicationName::Application
  

Если все, что вы сделали на этом этапе, это установили Ruby и Rails, я бы повторно запустил генератор, чтобы получить что-то, что работает.

Кроме того, поскольку вы используете Windows, я хотел бы порекомендовать Rails Installer для установки и настройки вашей среды. Это значительно облегчает процесс запуска.

Вероятно, это и есть тот учебник, о котором вы говорите, но я также настоятельно рекомендую учебник Майкла Хартла по Ruby on Rails для подробного ознакомления с Rails 3. Раздел о создании вашего первого приложения может оказаться полезным в этой ситуации.

Комментарии:

1. Да, в config.ru был сгенерирован с использованием rails new [appname] . Не уверен, почему я не получаю стандартное значение по умолчанию. Кроме того, да, это руководство по Hartl, которому я следую. Попробую установщик Rails.

2. Извините за дотошность, но если приложение называется demo_app и я запускаю: rails new demo_app, чего мне ожидать config.ru читать?

3. Та же require строка, что указана в моем ответе, с последней строкой run DemoApp::Application .

4. По какой-то причине по-прежнему не работал под Windows native. Хотя ваши ответы абсолютно верны. В итоге я перешел на Cygwin и запустил там rails. Проблема решена. Спасибо