我已验证Merchant.find_all
正确返回包含许多元素的枚举数。但是,当我运行以下代码时,我得到一个空白页面。为什么内联模板没有重复调用并多次输出“hello”?
require 'sinatra'
require 'sinatra/reloader'
require 'sequel'
require_relative 'config/init'
require_relative 'merchant'
get '/' do
Merchant.find_all.each do |m|
erb :layout
end
""
end
__END__
@@ layout
hello
答案 0 :(得分:1)
您正在从路径块返回一个空字符串。返回erb结果。如果您确实想要多次渲染该视图,请将每个erb
的结果保存到字符串缓冲区中并返回。
get '/' do
result = ''
Merchant.find_all.each do |m|
result += erb(:layout)
end
result
end
我从来没有尝试过这个,但我认为它会起作用......