我在网上寻找了很多解决方案,而我似乎无法找到答案。
我有一个表链接的多态关联,它链接到许多其他表。
这是我的模型有点简化:
links.rb
class Links < ActiveRecord::Base
belongs_to :linkable, polymorphic: true
end
events.rb
class Event < ActiveRecord::Base
has_many :links, as: :linkable
accepts_nested_attributes_for :links
end
这是管理员表格
events.rb
ActiveAdmin.register Event do
form do |f|
f.has_many :links do |link_f|
link_f.inputs "links" do
link_f.input :url
end
end
f.actions
end
end
这是我的schema.rb
中的内容create_table "links", force: true do |t|
t.string "url"
t.datetime "created_at"
t.datetime "updated_at"
t.integer "linkable_id"
t.string "linkable_type"
end
它引发了我的错误:未初始化的常量事件::链接
我似乎无法找到问题,这让我疯狂......
似乎缺少某种关系,但我无法找到它。
非常感谢每一个可以提供帮助的人!
答案 0 :(得分:1)
我认为问题在于您为模型命名的方式。模型总是被声明为单数实体,而不是复数。
你应该:
links.rb
重命名为link.rb
events.rb
重命名为event.rb
class Links < ActiveRecord::Base
重命名为class Link < ActiveRecord::Base
看看是否有帮助。