Ruby on Rails:为数据库中的每个值添加一个复选框

本·史密斯

我正在尝试在表单上显示复选框,该复选框显示用户的所有联系人,以便用户随后可以选择所需的联系人。到目前为止,我已经在窗体上完成了此操作,该窗体显示复选框,但没有任何值:

    <% @contacts.each do |contact| %>
        <% if contact.user.id == User.find(session[:user_id]).id %>
            <%= f.check_box :to %>
        <% end %>
    <% end %>

但是,当我试图改变线路<%= f.check_box :to %>,以<%= f.check_box :to, contact.email %>显示联系人的电子邮件地址,我得到的错误:

undefined method `merge' for "[email protected]":String

有没有解决的办法?我之前看过多个帖子,尝试过各种选项,但似乎没有帮助,包括:

Ruby on Rails f.label为复选框 http://apidock.com/rails/v4.0.2/ActionView/Helpers/FormOptionsHelper/collection_check_boxes 如何为Rails 3.2索引页中的每一行添加一个复选框?

朱马科夫

视图中的逻辑太多。我看不到您的代码,但是我可以给您一些建议:

在控制器中:

@contacts_of_current_user = @contacts.where(user_id: session[:user_id])

看法:

<% @contacts_of_current_user.each do |contact| %>
      <%= f.label :to, contact.email %>
          <%= f.check_box :to, {}, contact.email %>
      <% end %>
<% end %>

编辑

从评论中我了解到,您需要获取一连串选定的电子邮件。

有两种方法可以做到这一点。

1)以某种方式在客户端(JavaScript)上构建此字符串

2)或传递一系列电子邮件,然后在服务器上将它们串联为单个字符串

我可以向您展示如何传递数组:

<%= f.collection_check_boxes(:to, @contacts, :email, :email ) %>

或者,您可以手动执行以下操作:

  <% @contacts_of_current_user.each do |contact| %>
      <%= f.label :to, contact.email %>
          <%= check_box_tag 'to[]', contact.email %>
      <% end %>
<% end %>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Ruby Rails-在现有数据库中添加一个布尔复选框列,以及如何使用它

来自分类Dev

Ruby on Rails:验证用户已选中一个复选框

来自分类Dev

在Ruby on Rails中使用pdftk库选中复选框

来自分类Dev

Ruby on Rails复选框不会更改值

来自分类Dev

Ruby on Rails:无法选中RSpec测试中的复选框

来自分类Dev

Ruby On Rails中的HABTM复选框的批量分配利用

来自分类Dev

限制允许在 javascript (Ruby on Rails) 中的数据表中选择的复选框数

来自分类Dev

如何使用Ruby和SQLite3从数据库中选择一个值?

来自分类Dev

如何使用Ruby和SQLite3从数据库中选择一个值?

来自分类Dev

在悬停期间在数据库中添加一行 - ruby on rails

来自分类Dev

在Ruby on Rails中为每个记录创建一个输入日志表单

来自分类Dev

如何将csv文件复选框值导出到ruby中的ruby表中?

来自分类Dev

如果它的值在数据库中,请选中一个复选框

来自分类Dev

如果数据库表中存在值,请选中一个复选框

来自分类Dev

从数据库获取每个n条记录-Ruby on Rails

来自分类Dev

Ruby on Rails-引导程序材料设计-将复选框添加到简单形式

来自分类Dev

Ruby Rails-可选的表单输入在复选框上显示为条件

来自分类Dev

关于ruby on rails从复选框获取值吗?

来自分类Dev

Ruby on Rails:隐藏字段值未插入数据库

来自分类Dev

Ruby on Rails复选框(单击div时,启用复选框)

来自分类Dev

Ruby on Rails通过复选框在序列化数组中搜索

来自分类Dev

Ruby on Rails:用哈希值替换数组中的值(来自数据库模型)

来自分类Dev

向每个复选框添加一个eventListener

来自分类Dev

列出Ruby on Rails中数据库中的可用表

来自分类Dev

Ruby添加到数据库

来自分类Dev

Ruby添加到数据库

来自分类Dev

Ruby添加到数据库

来自分类Dev

Ruby on Rails-作业延迟-作业队列未添加到数据库中

来自分类Dev

Ruby on Rails:如何在现有模型中向数据库添加参数

Related 相关文章

  1. 1

    Ruby Rails-在现有数据库中添加一个布尔复选框列,以及如何使用它

  2. 2

    Ruby on Rails:验证用户已选中一个复选框

  3. 3

    在Ruby on Rails中使用pdftk库选中复选框

  4. 4

    Ruby on Rails复选框不会更改值

  5. 5

    Ruby on Rails:无法选中RSpec测试中的复选框

  6. 6

    Ruby On Rails中的HABTM复选框的批量分配利用

  7. 7

    限制允许在 javascript (Ruby on Rails) 中的数据表中选择的复选框数

  8. 8

    如何使用Ruby和SQLite3从数据库中选择一个值?

  9. 9

    如何使用Ruby和SQLite3从数据库中选择一个值?

  10. 10

    在悬停期间在数据库中添加一行 - ruby on rails

  11. 11

    在Ruby on Rails中为每个记录创建一个输入日志表单

  12. 12

    如何将csv文件复选框值导出到ruby中的ruby表中?

  13. 13

    如果它的值在数据库中,请选中一个复选框

  14. 14

    如果数据库表中存在值,请选中一个复选框

  15. 15

    从数据库获取每个n条记录-Ruby on Rails

  16. 16

    Ruby on Rails-引导程序材料设计-将复选框添加到简单形式

  17. 17

    Ruby Rails-可选的表单输入在复选框上显示为条件

  18. 18

    关于ruby on rails从复选框获取值吗?

  19. 19

    Ruby on Rails:隐藏字段值未插入数据库

  20. 20

    Ruby on Rails复选框(单击div时,启用复选框)

  21. 21

    Ruby on Rails通过复选框在序列化数组中搜索

  22. 22

    Ruby on Rails:用哈希值替换数组中的值(来自数据库模型)

  23. 23

    向每个复选框添加一个eventListener

  24. 24

    列出Ruby on Rails中数据库中的可用表

  25. 25

    Ruby添加到数据库

  26. 26

    Ruby添加到数据库

  27. 27

    Ruby添加到数据库

  28. 28

    Ruby on Rails-作业延迟-作业队列未添加到数据库中

  29. 29

    Ruby on Rails:如何在现有模型中向数据库添加参数

热门标签

归档