【问题标题】:Passing Variable to Partial - Page Displays symbol instead of string将变量传递给部分 - 页面显示符号而不是字符串
【发布时间】:2012-12-08 21:41:27
【问题描述】:

这是我认为调用部分的代码:

<%= render :partial => "/divbox", :locals => { :smush => "Science" } %>

现在是 _divbox.html.erb 中的内容:

<div>
<h1> <%= :smush %> </h1>
</div>

我希望 HTML 输出:

<div>
<h1> Science </h1>
</div>

但是我得到了:

<div>
<h1> smush </h1>
</div>

提前感谢您的宝贵时间。

【问题讨论】:

  • 弄清楚了:对“smush”的引用在部分页面中不应有冒号:

标签: ruby-on-rails ruby-on-rails-3.2 partial-views local-variables partials


【解决方案1】:

改变这个:

<h1> <%= :class %> </h1>

到这里:

<h1> <%= class %> </h1>

注意删除冒号。您传递给局部变量的局部变量是局部变量......不是符号。

另外.. 根本不要使用“类”。这是一个 ruby​​ 保留字,即使它确实有效,也会令人困惑。这样做:

<%= render :partial => "/divbox", :locals => { :class_name => "Science" } %>


<div>
<h1> <%= class_name %> </h1>
</div>

或者如果你真的想要“class”,请使用“klass”,这是一个常见的替代品......

【讨论】:

    猜你喜欢
    • 2019-02-08
    • 2020-06-16
    • 1970-01-01
    • 2018-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多