При создании приложения у меня была модель Order с атрибутом delivery_option
.Через некоторое время мне пришлось создать «более высокий уровень» order
для группировки заказов и создать MainOrder.Теперь Order Order делегирует :delivery_option
в MainOrder, но около 70% MainOrders имеет delivery_option == nil
, потому что там, где он был создан во время миграции, просто для покрытия заказов из прошлого.Я не смог заполнить main_order.delivery_option = order.delivery_option
, потому что в одном main_order может быть много заказов, каждый с разными :delivery_option
.
Возможно ли как-то получить доступ к order.delivery_option
, не нажимая order.main_order.delivery_option
?
код выглядит так:
class MainOrder
has_many :orders
end
class Order
belongs_to :main_order
delegates :delivery_option, to: main_order, allow_nil: true
end