我有一个项目,其中包含通过habtm关系链接的 2 个模型,并且希望播种默认关系值,因为它们是固定的并且需要 Web 应用程序才能工作。
似乎无法找到访问模型连接表并将默认值播种到 object1_id、object2_id 的方法,因为该表未链接到模型。目前正在通过 SQL 直接在 postgreSQL 上完成。
有什么建议么?
我有一个项目,其中包含通过habtm关系链接的 2 个模型,并且希望播种默认关系值,因为它们是固定的并且需要 Web 应用程序才能工作。
似乎无法找到访问模型连接表并将默认值播种到 object1_id、object2_id 的方法,因为该表未链接到模型。目前正在通过 SQL 直接在 postgreSQL 上完成。
有什么建议么?
如果您还没有这样做,则需要生成一个连接表:
rails g migration CreateJoinTable users roles
只要您在各自的班级中有 habtm :
# app/models/user.rb
class User < ActiveRecord::Base
has_and_belongs_to_many :roles
end
只需将您正在创建的对象推送到关联数组上:
# db/seeds.rb
bill = User.create(name: "bill")
bill.roles << Role.create(title: "admin")
如果您能想到要直接访问模型的任何地方,请创建模型。否则直接sql查询可能没问题。