Как при использовании EAV сделать добавление полей по категориям, а не по сущностям?
Хочу написать простой интернет-магазин (на Yii). Разумеется, у товаров должны быть произвольно добавляемые поля, для чего используется паттерн Entity-Attribute-Value. Как правильно сделать так, чтобы типы полей привязывались к категориям, а значения - к конкретным товарам?
Т.е., допустим, админ сайта, создавая карточку товара, выбирает категорию (допустим, грубо говоря, "жесткие диски"), и появляются поля, специфичные для данной категории ("объем", "скорость вращения шпинделя" и т.д.), и заполняются конкретно для этого товара. А названия/типы полей должны указываться при создании/редактировании категории, а не товара.
Источник: Stack Overflow на русском