Я уже некоторое время склоняюсь над этой проблемой. Может ли кто-нибудь помочь мне?
У меня есть две таблицы: products и product_attributes. Продукт имеет всю основную информацию о продукте, а product_attributes содержит всю конкретную информацию о продуктах различных категорий. Это очень похоже на систему пурпурных атрибутов. эта таблица имеет 4 столбца: id, product_id, attribute_name, attribute_value.
Теперь предположим, что продукт имеет 2 атрибута:
------------------------------------------------------
| id | product_id | attribute_name | attribute_value |
------------------------------------------------------
| 1 | 123 | length | 123cm |
------------------------------------------------------
| 2 | 123 | material | Denim |
------------------------------------------------------
| 3 | 123 | season | Summer |
------------------------------------------------------
Теперь, если я устанавливаю красноречивые отношения и запрашиваю продукт, я получаю объект продукта со всеми тремя атрибутами. Пока это то, что я хотел. Но теперь в шаблоне лезвия я хотел бы иметь возможность сделать что-то вроде этого:
$product->attribute->length
Возможно ли это вообще, или мне нужно добиться такого рода вещей с совершенно другим подходом (например, создание разных таблиц для разных типов продуктов / категорий)?
Заранее спасибо!
длина — это значение кортежа, а не нужный вам атрибут
$product->attribute->where('attribute_name', 'length')
или же
$product->attribute->whereAttributeName('length')
Других решений пока нет …