Я думаю, что это решение вполне достижимо ... Я просто еще не смог его достичь -
У меня есть приложение, в котором есть несколько районов. Еще у меня есть модель под названием Person. Человек может быть либо кандидатом - в этом случае он принадлежит к округу, либо он является действующим президентом, и в этом случае округ принадлежит ему.
Вот моя существующая ассоциация:
class Person < ApplicationRecord
belongs_to :district, inverse_of: :candidates, class_name: 'District', optional: true,
has_one :incumbent_district, inverse_of: :incumbent, class_name: 'District', optional: true
class District < ApplicationRecord
has_many :candidates, inverse_of: :district, class_name: 'Person'
belongs_to :incumbent, inverse_of: :incumbent_district, class_name: 'Person', foreign_key: 'incumbent_id', optional: true
В форме, в которой я создаю человека, если он является действующим лицом, я бы хотел раскрывающееся меню, чтобы выбрать, какой район принадлежит им, - в конечном итоге редактируя таблицу районов, чтобы изменить поле «incumbent_id» на установите его как человека, которого я сейчас создаю. Я знаю, как это сделать для установки родительского элемента в форме, но я застрял в выяснении дочерней части.
Любые рекомендации будут оценены!