【问题标题】: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,可以一目了然地了解字符串插值的样子。

【讨论】:

    猜你喜欢
    • 2012-08-07
    • 1970-01-01
    • 1970-01-01
    • 2019-05-05
    • 1970-01-01
    相关资源
    最近更新 更多