【问题标题】:Rails evaluate variable being passed to helper methodRails 评估传递给辅助方法的变量
【发布时间】:2012-12-13 15:26:34
【问题描述】:
是否可以在将变量的值传递给 Rails 中的辅助方法之前传递它。
例如,我有一个 base64_encode 辅助方法,@base_url 只是在字符串文字中传递而不是被评估。
<%= base64_encode(#{@base_url} + '/helloworld.html') %>
【问题讨论】:
标签:
ruby-on-rails
ruby
erb
【解决方案1】:
"#{ variable }" 是 ruby 字符串中的变量插值。所以你至少有两个选项来构建你的字符串。
<%= base64_encode("#{ @base_url }/helloworld.html") %>
# or
<%= base64_encode(@base_url + "/helloworld.html") %>
请注意,对于 Ruby 字符串插值,您需要使用 "" 而不是 ''。
Kansas City on Rails 有一个 short blog post,可以一目了然地了解字符串插值的样子。