[英]rails admin has_many through relationship leading to errors
我正在使用rails_admin gem作为管理界面。
我有一个has_many通过关系似乎与Rails管理员不起作用。
class Company < ActiveRecord::Base
has_many :talent_infos, class_name: 'CompanyTalentInfo'
has_many :talents, through: :talent_infos
end
class CompanyTalentInfo < ActiveRecord::Base
belongs_to :company
belongs_to :talent
end
class Talent < ActiveRecord::Base
has_many :talent_infos, class_name: 'CompanyTalentInfo'
has_many :companies, through: :talent_infos
end
每次尝试创建新公司时都会出错,我的猜测是这是rails_admin第一次尝试检查关系并且它不接受我当前的关联。
我得到的错误是此文件gems / rails_admin-0.7.0 / app / views / rails_admin / main / _form_filtering_multiselect.html.haml:21
21 controller.list_entries(config, :index, field.associated_collection_scope, false).map { |o| [o.send(field.associated _object_label_method), o.send(field.associated_primary_key)] }.sort_by {|a| [selected_ids.index(a[1]) || selected_ids.si ze, i+=1] }
我得到这个错误
undefined method `klass' for nil:NilClass`
谁能帮助我建立这种联系,我该如何解决。
也许是一个较晚的响应,但是您可以将数据库架构的相关部分与以下内容进行比较,让我知道其中的区别吗? 我相信关系建立正确,所以应该是问题所在。
create_table "companies", force: :cascade do |t|
t.string "name"
end
create_table "company_talent_infos", force: :cascade do |t|
t.string "metadata"
t.integer "company_id"
t.integer "talent_id"
end
create_table "talents", force: :cascade do |t|
t.string "name"
end
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.