Ruby 内联模板不能与模块化一起工作?

Ruby 内联模板不能与模块化一起工作?,ruby,sinatra,modular-design,Ruby,Sinatra,Modular Design,我正在制作一个模块化应用程序: main.rb 我想做内联模板: servers/some/server.rb 但我得到了: 没有这样的文件或目录-views/index.haml 如果我将模板移动到main.rb,它会工作,但它不再是模块化的。在另一种情况下也有相同的错误: main.rb server_common.rb 解决方案: require "sinatra" set :inline_templates, caller.first[/[^:]+/] 还必须添加此项,因为Sinatr

我正在制作一个模块化应用程序:

main.rb

我想做内联模板:

servers/some/server.rb

但我得到了:

没有这样的文件或目录-views/index.haml


如果我将模板移动到main.rb,它会工作,但它不再是模块化的。

在另一种情况下也有相同的错误:

main.rb

server_common.rb

解决方案:

require "sinatra"
set :inline_templates, caller.first[/[^:]+/]
还必须添加此项,因为Sinatra没有自动运行

set :app_file, caller.first[/[^:]+/]

在另一个案例中出现相同错误:

main.rb

server_common.rb

解决方案:

require "sinatra"
set :inline_templates, caller.first[/[^:]+/]
还必须添加此项,因为Sinatra没有自动运行

set :app_file, caller.first[/[^:]+/]

该说明似乎适用。你需要在另一个文件中使用sinatra,对吗?@Anthony,我在main.rb(在需要模块之前)中添加了
enable:inline_templates
,但没有任何更改该注释似乎适用。你在另一个文件中需要sinatra,对吗?@Anthony,我在main.rb中(在需要模块之前)放置了
enable:inline_templates
,但没有任何更改
require "sinatra"
set :inline_templates, caller.first[/[^:]+/]
set :app_file, caller.first[/[^:]+/]