Я знаю, что есть много учебных пособий, объясняющих, как создавать отношения «has_many through» между моделями, но я думаю, что мой вопрос является техническим и концептуальным.Rails отношение между тремя путями запутанными
- Цель состоит в том, чтобы создать веб-сайт онлайнового заказа еды
- я создал модель Order, Элемента и OrderItem.
Отношения:
class OrderItem < ActiveRecord::Base
belongs_to :item, conditions: "active = true"
belongs_to :order
end
class Order < ActiveRecord::Base
belongs_to :user
has_many :order_items
has_many :items, through: :order_items
validates :status, inclusion: { in: %w(ordered completed cancelled) }
end
class Item < ActiveRecord::Base
has_and_belongs_to_many :categories, join_table: :items_categories
has_many :order_items
has_many :orders, through: :order_items
validates_presence_of :title, :description
validates :price, numericality: { :greater_than=>0 }
end
Я делаю что-то не так? Каждый заказ должен содержать много предметов и их количество. Я не очень позитивен. Я делаю правильную архитектуру для этих моделей, так как я не могу назначить количество с помощью оператора < <, только назначьте элемент.
Спасибо за ваше время.
¿? какова ваша команда в консоли? Я не вижу атрибут количества в модели OrderItem – DennisCastro
Dennis, количество было установлено в процессе миграции, в столбце order_items есть столбец с этим именем. Как установить элементы заказа? У меня есть сомнения в этом вопросе. –