我对这个问题已经思考了一段时间了。有人可以帮我吗?
我有两个表:产品和产品属性。产品包含所有基本产品信息,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 |
------------------------------------------------------
现在,如果我设置 Eloquent 关系并查询产品,我会得到一个具有所有三个属性的产品对象。到目前为止,这就是我想要的。但现在在 Blade 模板中我希望能够执行以下操作:
$product->attribute->length
这是否可能,或者我是否需要使用完全不同的方法来实现这些事情(例如为不同的产品类型/类别创建不同的表)?
提前致谢!
最佳答案
长度是一个元组值,而不是您需要的属性
$product->attribute->where('attribute_name', 'length')
或
$product->attribute->whereAttributeName('length')
关于php - Laravel:如何制作列名的键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27116759/