Rails: 插入一个没有任何模型的 table

Rails: Inserting into a table that does not have any model

我是 rails 的新手。

我有三个 tableA、B 和 C,其中关系是 C 属于 A 到 B。现在我想在 B 中插入一个新条目以在 A 和 C 之间建立另一个关系。但问题是 B 的模型不是在我正在处理的项目中创建的。 table B是通过将B的create table命令放入table C的create table迁移文件中创建的。table b的结构是( id, A_id, C_id).

create_table :C do |t|
    t.string :name
end

create_table :B do |t|
    t.belongs_to :A
    t.belongs_to :C
end

所以我对如何将映射构造到table B感到困惑。我想到的一种方法是通过将相应记录的id插入[=24=来创建A和C之间的映射] B. 但是因为B的模型不存在所以没法做

有人可以解释或指出适当的资源吗?

我遇到了类似的问题。在我的例子中,推送成功了。

举个例子:假设我们有两个 table 医生和班次,它们使用 doctors_shift 连接。所以如果你想为医生添加班次,你可以使用

Doctor.find_by(id:doctor_id).shifts.push(instance_of_shift_you_want_to_add)

,对于 instance_of_shift_you_want_to_add 你基本上可以使用 Shift.find_by(id:shift_id)