У меня есть следующие модели:Должна ли моя цена иметь много показателей или принадлежать метрике?
class Price < ActiveRecord::Base
belongs_to :product
end
class Metric < ActiveRecord::Base
belongs_to :price
belongs_to :product
end
В моем приложении, так как продукт не меняется, но цена делает, я добавляю новые цены, а не на продукт. Мое дело, что о, если цена измеряется метрической единицы, например:
Broccoli is $1.50 per 2 LBs
Это позволит сделать 3 атрибуты:
- $ 1,50 =
:cost_per_metric_unit
- 2 =
metric_unit_amount
- LB =
:metric_unit
Сценарий при добавлении новой цены - это вы первый ..
- Выберите продукт (Product)
- Отдайте стоимость (цена)
- Если его метрическая единица на основе цены, заполнить эти атрибуты. (Метрическая)
Я путают об ассоциациях. Я знаю, что продукты могут иметь много разных показателей, но является ли это ассоциацией :through
или цена принадлежит метрике? Прямо сейчас в моей таблице Metrics у меня есть product_id
и price_id
, но так ли? Я не думаю, что у одной цены может быть много разных показателей, только для Продукта.
Как бы вы это определили?
спасибо.
Действительно ли цена должна быть связана с метрикой? Для меня похоже, что продукт должен иметь цену и метрику, но не нужно идти дальше? –
Согласен с @MatthewLehner. Это должно быть просто, как он сказал выше. –