Laravel从每个部分的关系中获得单一记录

时间:2016-09-12 16:43:12

标签: php laravel laravel-5

我有两个表格部分和图像。每个部分都有多个图像。我想用他们的图像显示所有部分,但我只想显示单个图像。因此,如果一个部件有多个图像,我想显示一个图像。这是我的查询

return Part::with(['images'=> function($q)
{
   $q->limit(1);
}])->get();

以上查询仅显示一个图像。但我想为每个部分显示一个图像。

谢谢

1 个答案:

答案 0 :(得分:1)

"与#34;不可能,因为它的行为如下:

select * from parts

select * from images where id in (1, 2, 3, 4, 5, ...) limit 1

相反,您可以在下面的循环中执行此操作:

foreach ( Parts::get() as $Part ) {
    $FirstImageOfPart = $Part->images()->first();
    // ...
}