Контекст: У меня есть простое приложение Sinatra: app.rb
находится в root каталога моего проекта, а каталог views/
находится на том же уровне, что и app.rb
.
Когда я запускаю свое приложение с ruby app.rb
, оно выдает ошибку, из-за которой Sinatra не знает, где находится каталог views/
:
Errno::ENOENT at /
No such file or directory @ rb_sysopen -
/{Two Directories Above Project Root}/views/admin.erb
По какой-то причине, Sinatra Кажется, я думаю, что root моего проекта на два уровня выше, чем он есть на самом деле, и я не могу понять, почему. Когда я явно устанавливаю папку представлений, эта ошибка исчезает, но другие аспекты моего приложения ломаются, потому что мое приложение, кажется, не знает, где оно живет.
Когда я запускаю приложение с shotgun
, я не получите эту ошибку. Сейчас я использую дробовик, так что это не имеет большого значения. Я просто пытаюсь понять, почему это происходит.