В настоящее время у меня две разные модели: User
и Project
. Модель User
имеет трех типов пользователей - владельцев, подрядчиков и клиентов. Я хочу назначить нескольких подрядчиков одному проекту. Я пытаюсь это с has_many :through
ассоциации, например, так:Rails has_many: через с другим именем столбца в таблице ассоциации
Class User
has_many :assignments
has_many :projects, :through => :assignments
Class Project
has_many :assignments
has_many :contractors, :through => :assignments
Class Assignment
belongs_to :user
belongs_to :project
Моя проблема заключается в использовании contractor_id
в assignments
таблице вместо user_id
.
В моей таблице assignments
у меня в настоящее время имеются столбцы contractor_id
и project_id
. Кажется, что все работает, если вместо этого я использую user_id
, но это может привести к тому, что в моих представлениях все будет довольно грязно.
Как бы это осуществить?
Это, безусловно, работает в одну сторону, теперь мне просто нужно, чтобы получить пользовательскую модель признать 'contractor_id' вместо' user_id', когда я вызов '@ user.projects' –
получил. Требуется модель пользователя: foreign_key =>: contractor_id on has_many: присваивания –