Я новичок в ruby на рельсах, и я полностью сбит с толку всей онлайн-документацией.Я создаю базу данных программы, которая отслеживает заказы.Я уже настроил ассоциации has_one, own_to и has_many в модели и могу проверить их связь с моим sqlbrowswer.
Вот примерная иллюстрация моделей.
Модели
Каждый заказ имеет только один продукт, одну услугу, один счет икаждый счет может иметь много расходов.Один и тот же продукт может появляться в разных заказах, но каждый заказ будет уникальным.
У меня также есть модель order_observer для создания зависимых моделей продукта
class OrderObserver < ActiveRecord::Observer
observe :order
def after_create(order)
Product.create! :order_id => order.id
Service.create! :order_id => order.id
Bill.create! :order_id => order.id
end
end
Вот как выглядят мой класс продукта и класс заказа:
class Product < ApplicationRecord
belongs_to :order
end
class Order < ApplicationRecord
has_one :product, dependent: :destroy
has_one :bill, dependent: :destroy
has_one :service, dependent: :destroy
accepts_nested_attributes_for :product
accepts_nested_attributes_for :bill
accepts_nested_attributes_for :service
end
Теперь меня смущает то, как обновить зависимые модели.Должен ли я реализовать несколько контроллеров для каждой модели или только один контроллер для обработки всего этого?
Прямо сейчас все, что у меня есть в моем главном контроллере:
def create
@order = Order.new(order_params)
end
def edit
@order = Order.find(params[:id])
end
def update
end
Буду признателен за любые советы илируководство.Спасибо!