f.check_box checked =>适用于铁轨上的红宝石

时间:2012-08-17 14:55:24

标签: ruby-on-rails ruby ruby-on-rails-3

您好我的观点中有以下代码:

//I write a loop here to display some workflows saying wkf.each do |i|
<% if (i write my condition here) %>
  <td style="text-align:left;">
  <%= f.check_box :i, {:checked=>true}%> 
  <%= f.label(i, i)%>
  </td></tr>
<% else %>
  <td style="text-align:left;">
  <%= f.check_box(i)%> 
  <%= f.label(i, i)%>
  </td></tr>
<%end%>

假设有三个工作流程'A','B'和'C'和'C'符合if条件, 那么发送的参数是'A'=&gt; 0,'B'=&gt; 0和'i'=&gt;'1'。 我希望它以'A'=&gt; 0的方式发送为'C'=&gt;'1'。

我知道'i' =>'1'已发送,因为我写了f.check_box :i, {:checked=>true}%而不是。{ <%= f.check_box(i)%>

请让我知道如何更改此设置,以便在满足if条件并且#{i}将被发送而不是:i

时默认选中复选框

由于

1 个答案:

答案 0 :(得分:7)

f.check_box :i不等于f.check_box(i),区别在于i是变量,而:i是一个符号,几乎就像一个字符串。在第一种情况下删除:

<%= f.check_box i, {:checked=>true} %>