Formhelpers Checked = checked / Selected =编辑时选中

时间:2013-10-09 12:41:44

标签: ruby-on-rails ruby-on-rails-4 form-helpers

当我使用用户可以选择的所有可用对象时,我有两种情况。

第一种情况是用户可以从活动的整个列表中选择1个象形图。

第二种情况是用户可以为活动选择多个客户端。

在这两种情况下,当我尝试编辑活动时,我无法设法检查/选择保存的那些。有没有办法做到这一点?

   <div class="pictograms">
      <% for p in Pictogram.all  %>
        <%= radio_button_tag "activity[pictogram_id]", p.id %>
        <%= label_tag(:pictogram_id, image_tag(p.url, :width => "75")) %>
      <% end %>
  </div>
  <div class="clients">
    <% for client in Client.all %>
      <label class="activity">
        <%= check_box_tag "activity[client_ids][]", client.id %>
        <%= client.name %>
      </label>
    <% end %>
  </div>

1 个答案:

答案 0 :(得分:1)

您可以编写辅助方法,对两种情况都返回true,false。

view:
<% for p in Pictogram.all  %>
  <%= radio_button_tag "activity[pictogram_id]", p.id, pictogram_is_true?(p) %>
<% end %>

<% for client in Client.all %>
    <%= check_box_tag "activity[client_ids][]", client.id, client_is_true?(client) %>
<% end %>

helper:
def pictogram_is_true?(p)
  // query here and return true or false
end

def client_is_true?(client)
  // query here and return true or false
end