1

我想知道是否有办法使用 sinatra 将 ruby​​ 变量返回到 haml 文件中。例如

哈姆:

%b
  = variable

红宝石

get '/' do
  variable = "foobar"
  haml :filename
end

然后让haml文件返回

富吧

4

2 回答 2

4

只需将其设置为实例变量即可。

get '/' do
  @variable = "foobar"
  haml :filename
end

还有你的火腿:

=@variable
于 2012-09-15T22:19:31.767 回答
2

您可以将本地哈希值传递给您的模板:

get '/local' do
  haml :filename, :locals => {:variable => "foobar"}
end

现在在您的模板中,variable将是一个值为 的变量"foobar"

一种可能的替代方法可能是使用辅助方法:

helpers do
  def variable
    "foobar"
  end
end

现在在您的模板variable中将有一个(名称错误的)方法返回"foobar".

于 2012-09-15T23:00:29.383 回答