В моем приложении Rails есть 3 модели:
class Person < ApplicationRecord
has_many :roles
has_many :companies, through: :roles
end
class Company < ApplicationRecord
has_many :roles
has_many :people, through: :roles
end
class Role < ApplicationRecord
belongs_to :person
belongs_to :company
end
В консоли я могу создать объединенную таблицу (Roles) с person_id и company_id, однако у меня также есть поле job_title, которое я хочу передать значение при создании.
Вот как я создаю объединенную таблицу:
person = Person.find(id)
person.companies.create(legal_name: "Company name Ltd.")
В результате я получаю:
#<Role id: 1, person_id: 2, company_id: 25, job_title: nil>
Название работы равно нулю, и я хочу заполните этот атрибут данными при создании.
Как мне сделать что-то подобное?
person = Person.find(id)
person.companies.create(legal_name: "Company name Ltd.", roles: [job_title: "Job title"])