我的一个模型包含以下内容:
public function from()
{
return $this->belongsTo(Station::class, 'from_station_id');
}
public function to()
{
return $this->belongsTo(Station::class, 'to_station_id');
}
为了使用它我使用的是with('to', 'from')
方法。结果如下:
从“站点”中选择*,其中“站点”。(“1”)中的“id”
从“电台”中选择*,其中“电台”。('2')中的“id”
两个缓存查询一个用于“to”,一个用于“from”。目前有1条记录它们是“有用的”。但是将来他们会有很多重复的ID ..
Laravel是否提供组合这些的选项?
答案 0 :(得分:2)
假设您需要通过关系(例如$model->from->first()
或$model->to->count()
)从模型中访问它们,您最好的选择是坚持使用2个查询。带有 where in 子句的查询并不重要,您可以另外缓存它们以加快速度。