我有两个表,用于扩展带有其他字段的模型。
模式:
additional_fields
id int
table_name string(255) (table associated with every model in my app)
key string(255)
desc string(255)
additional_fields_values
id int
field_id int (ref on additional_fields.id)
model_id int
value text
现在,我想用许多其他字段扩展许多表,并显示它们的值。我尝试在要扩展的模型上使用hasManyThrough关系:
public function additional_fields(){
return $this->hasManyThrough(
AdditionalField::class,
AdditionalFieldValue::class,
'field_id',
'id',
'id',
'model_id'
);
}
但是它只为我提供一个特定附加字段的所有值,没有“父”字段。我想显示与表和为当前实例插入的值关联的所有其他字段。不使用许多数据库查询的一种好方法是什么?