上下文:我有一个简单的 Sinatra 应用程序:app.rb
位于我项目目录的根目录,并且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 似乎认为我的项目的根源比实际水平高出两层,我不知道为什么。当我明确设置视图文件夹时,此错误消失了,但我的应用程序的其他方面会中断,因为我的应用程序似乎不知道它所在的位置。
当我使用 运行应用程序时shotgun
,我没有收到此错误。我现在用的是霰弹枪,所以没什么大不了的。我只是想弄清楚为什么会发生这种行为。