ruby-on-rails - Rails Active Admin 多对多关系

标签 ruby-on-rails ruby ruby-on-rails-3 activeadmin

我有以下型号

class Owner < ActiveRecord::Base
  has_many :business_owners
  has_many :businesses, :through => :business_owner
end

class Business < Active Record::Base
  has_many :business_owners
  has_many :businesses, :through => :business_owner
end

class BusinessOwner < ActiveRecord::Base
  belongs_to :owners
  belongs_to :businesses
end

我尝试将 BusinessOwner 模型添加到管理仪表板:

rails generate active_admin:resource BusinessOwner

它在app/admin/中创建一个名为business_owners的文件 当我尝试查看企业主时,我收到以下错误:

uninitialized constant BusinessOwner::Owners
Extracted source (around line #1):

1: render renderer_for(:index)

有人可以告诉我如何使用具有多对多关系的主动管理吗?

最佳答案

你的人际关系看起来不太好。

belongs_to 关系中,Rails 希望您使用单数形式

class BusinessOwner < ActiveRecord::Base
  belongs_to :owner
  belongs_to :business
end

同样,您需要正确引用:through

  has_many :businesses, :through => :business_owners

(即复数所有者)

在考虑 ActiveAdmin 之前,通常值得启动 Rails 控制台(或编写测试,呵呵)来测试这些东西;)

关于ruby-on-rails - Rails Active Admin 多对多关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9450988/

相关文章:

ruby-on-rails - Ruby on Rails 正则表达式

ruby - 将 ImageMagick 命令移植到 RMagick

ruby-on-rails - rails 3 : Call back for when a certain object is pulled from the database (Mongo Mapper)

ruby-on-rails-3 - 无法将 HashWithIndifferentAccess 转换为字符串?

ruby-on-rails - elasticsearch rails 排序错误

ruby-on-rails - 如何在heroku上禁用 Assets 管道?

ruby-on-rails - skip_before_action 和 Rails 5

ruby - 获取托管在 S3 上的文件的行数

css - rake Assets :precompile not working - Windows 7

ruby-on-rails - rails : Displaying published post by all and unpublished post of current_user