如何在Rails API数据库中植入新的联接表

时间:2019-02-04 15:03:48

标签: ruby-on-rails ruby database jointable

我在Rails API数据库中有两个类,我刚刚为其创建了一个联接表。我之前为这两个类都设置了种子,因此它们具有数据。现在,我想从现有数据中为带有ID的加入类播种。

这是前两个类的模型:

class Stakeholder < ApplicationRecord
  has_many :project_stakeholders
  has_many :projects, through: :project_stakeholders
end

class Project < ApplicationRecord
  has_many :project_stakeholders
  has_many :stakeholders, through: :project_stakeholders
end

这是我参加课程的模型:

class ProjectStakeholder < ApplicationRecord
  belongs_to :project
  belongs_to :stakeholder
end

现在我有两个问题:

  1. 如何使用来自两个第一类(project_id和takeholder_id)的数据填充联合类。

  2. 如何在Rails控制台中检查ProjectStakeholder类中的值?

我研究并尝试了Stackoverflow的其他选项,但它们似乎不起作用。从我所见,Rails指南也没有提供答案。对于某些想法将不胜感激!

1 个答案:

答案 0 :(得分:1)

您可以在创建后将利益相关者分配到项目中

Project.first.stakeholders << Stakeholder.limit(5)
Project.second.stakeholders << Stakeholder.limit(5).offset(5)

您可以通过不同方式在控制台中对其进行检查:

Project.first.stakeholders.pluck(:id)
ProjectStakeholder.first