Rails的simple_form协会(Rails simple_form association)

2019-07-28 21:30发布

我试图创建“会员”使用simple_form和具有显示关联的地方显示为下面的组织,而不是ID,或ORGANIZATION_NAME麻烦的形式。 我失去了一些东西在这里? 我应该如何去吗?

**组织:0x0000000485cf88

组织:0x0000000485c948

组织:0x0000000485c358 **

class Organization < ActiveRecord::Base
  has_many :members
  attr_accessible :organization_name
end

class Member < ActiveRecord::Base
  belongs_to :organization
  attr_accessible :active, :email, :first_name, :last_name, :role
end

  <%= f.input :first_name %>
  <%= f.input :last_name %>
  <%= f.input :role %>
  <%= f.input :email %>
  <%= f.input :active %>
  <%= f.association :organization %>

  <%= f.button :submit %>

谢谢。

干杯,Azren

Answer 1:

貌似Organization模型中没有任何一个字段: [ :to_label, :name, :title, :to_s ]所以SimpleForm不能检测到集合的默认标签和值的方法。 我想你应该手动传递。



Answer 2:

添加to_label功能,以您的组织类,如下图所示

class Organization < ActiveRecord::Base
  has_many :members
  attr_accessible :organization_name

  def to_label
    "#{organization_name}"

  end
end

refered 简单的表单关联自定义标签名称



文章来源: Rails simple_form association