Я смотрю на вложенные атрибуты и у меня есть несколько вопросов об отношениях между моделями.
Скажем, у меня есть Шоу , которое имеет_мани Сезоны .И Показать и Сезон может иметь много Актеров и Персонал .См. Пример таблицы:
Когда создается Шоу , Сезон принимает Шоу ассоциация и оба Актеры и Персонал принимает оба атрибута Показать и Сезон .Это будет тройная вложенная форма?
То есть мои модели будут выглядеть так?
class Show < ApplicationRecord
has_many :seasons, dependent: :destroy
has_many :actors, dependent: :destroy
has_many :staff, dependent: :destroy
accepts_nested_attributes_for :seasons, allow_destroy: true
accepts_nested_attributes_for :actors, allow_destroy: true
accepts_nested_attributes_for :staff, allow_destroy: true
end
class Season < ApplicationRecord
belongs_to :show
has_many :actors, dependent: :destroy
has_many :staffs, dependent: :destroy
accepts_nested_attributes_for :actors, allow_destroy: true
accepts_nested_attributes_for :staff, allow_destroy: true
end
class Actor < ApplicationRecord
belongs_to :show
belongs_to :season
end
class Staff < ApplicationRecord
belongs_to :show
belongs_to :season
end
А мой контроллер шоу будет выглядеть так:
class ShowsController < ApplicationController
def create
@show.seasons.build
@show.seasons.build.actors.build
@show.seasons.build.staffs.build
end
end