将变量返回到HAML

时间:2012-09-15 22:10:12

标签: ruby sinatra haml

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

HAML:

%b
  = variable

红宝石

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

然后使用

返回haml文件

foobar的

2 个答案:

答案 0 :(得分:4)

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

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

你的haml:

=@variable

答案 1 :(得分:2)

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

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

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

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

helpers do
  def variable
    "foobar"
  end
end

现在,您的模板中variable将是一个返回"foobar"的(命名错误的)方法。

相关问题