【问题标题】:Radio buttons for a has_many and belongs_to associationhas_many 和 belongs_to 关联的单选按钮
【发布时间】:2011-01-13 23:49:19
【问题描述】:

我有一个 has_many 和 belongs_to 关联。

class Link < ActiveRecord::Base     
  has_and_belongs_to_many :categories
  belongs_to :property
end

class Property < ActiveRecord::Base
  has_many :links
end

在索引中显示我有&lt;%= link.property.name %&gt;,它将显示我分配给控制台链接的属性就好了。

我在弄清楚如何在 _form 中显示为链接分配属性的单选按钮时遇到了问题(下拉菜单也可以)。

似乎以前有过这个问题的每个人都有一个 has_many :through 或一个 HABTM 关系,我似乎无法调整他们的答案。

【问题讨论】:

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


    【解决方案1】:

    由于每个链接只有一个属性,您可能需要单选按钮(而不是复选框)。这应该有效(在您看来)

    <%= form_for @link do |f| %>
      <% @properties.each do |p| %>
        <%= f.radio_button :property_id, p.id %>
        <%= f.label :property_id, p.name %>
      <% end %>
    
      <%= f.submit %>
    <% end %>
    

    别忘了在你的控制器中设置@properties = Property.all

    【讨论】:

    • 拉德。单选按钮(我不敢相信我正在搜索复选框)显示但没有标签。关于标签标签的任何想法?
    • 另外,如果我检查并提交其中一个单选按钮,不管是哪一个,它都会将链接的 property_id 更改为 0 并破坏视图,因为没有与 id = 关联的名称0.
    • 我之前搞砸了(将属性name 传递给单选按钮而不是id)...查看更新的答案(应该可以正常工作)。对不起!
    猜你喜欢
    • 2012-08-06
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    • 2015-09-11
    • 2015-04-17
    • 1970-01-01
    • 1970-01-01
    • 2013-10-09
    相关资源
    最近更新 更多