在我的 Laravel API中,每个人和所有地方都写select *
,即使它不需要收集所有列数据。
使用雄辩的select
代替确定需要的是什么更好?
答案 0 :(得分:3)
有几种方法可以做到这一点:
要仅选择特定字段,您可以执行以下操作:
ModelName::all('column1', 'column2', 'column3');
或使用get:
ModelName::get(['id', 'date']);
对于有关系的模型:
$model->relation()->only(['column1', 'column2']);
如果您需要在选择具有关系的特定列时急切加载:
$data = Model::with(array('relation' => function($query)
{
$query->select('name');
}))->get();
您可以在collections
了解更多信息