Как мне запустить мое модульное приложение Sinatra? - PullRequest
2 голосов
/ 09 февраля 2011

Я создаю новую версию Lovers с Синатрой. Вы можете просмотреть исходный код Lovers на GitHub .

Я могу успешно запустить свое приложение в режиме огурца, запустив cucumber через CLI из корневого каталога репозитория. Но ...

1) как запустить приложение в режиме разработки?

Это немного сложно, потому что это модульное приложение, и я переместил файл app.rb в lib/lovers/application.rb.

2) Как запустить его с shotgun, чтобы он автоматически перезапускал приложение при каждом HTTP-запросе?

3) Что вы делаете, когда запускаете ruby app.rb для приложения Sinatra?

Если вы ответите на часть 3), я думаю, я смогу найти ответ на 1 и 2.

Спасибо!

1 Ответ

5 голосов
/ 09 февраля 2011

1) Просто запустите bundle exec shotgun из корня проекта.Дробовик, в отличие от других стоечных серверов, таких как тонкий, специально разработан ... фактически ... предназначен только для режима "разработки" ... в том смысле, что он перезагружает ваш код, если он изменяется.

2) Почемуна каждый запрос?Дробовик автоматически перезагружается при необходимости.

3) ruby app.rb запускает небольшой сервер приложений (как показано здесь: http://www.sinatrarb.com/), но, вероятно, это не то, что вам нужно. Дробовик должен сделать свое дело.

Здесь важно увидеть config.ru в корневом каталоге loversapp. Это то, что ищет дробовик и другие серверы для установки в стойку. Он загружает ваш lib/lovers/application.rb, устанавливает правильный RACK_ENV и вызывает run Lovers::Application.

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