Могу ли я сделать программу Sinatra без перезагрузки сервера? - PullRequest
12 голосов
/ 16 апреля 2011

Когда я изменяю код и вынужден перезагружать сервер, чтобы увидеть результаты.Есть выход?

Ответы [ 3 ]

29 голосов
/ 16 апреля 2011

Есть несколько опций, подробно описанных в Sinatra FAQ . Самым простым представляется использовать shotgun, который вы можете установить и вызвать следующим образом:

$ sudo gem install shotgun
$ shotgun myapp.rb

или, если вы используете, определите свое приложение путем наследования от Sinatra::Base и используйте файл config.ru:

$ shotgun config.ru -p 4567
5 голосов
/ 16 апреля 2011

Если вы используете Phusion Passenger, вы можете поместить этот файл в корневую папку приложения

TMP / always_restart.txt

и он будет перезапускаться при каждом запросе.

http://www.modrails.com/documentation/Users%20guide%20Apache.html (раздел 8.7)

1 голос
/ 12 сентября 2012

Лучше использовать перегрузчик из гема sinatra-contrib (также из FAQ по Sinatra ): сначала установите гем sinatra-contrib, а затем убедитесь, что файл .rb вашего приложения начинается со следующих строк:

require 'sinatra'
require 'sinatra/reloader' if development?

И тогда любые измененные файлы конфигурации будут перезагружены (не нужно перезагружать сервер!)

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