猿问

从一组图像中仅选择一个图像

我有两张桌子,让我给你看看它的样子,


Projects

---------

id


Images

-------

id

projects_id

image

is_default

为项目上传图片时,上传多张图片,默认图片尚未设置。所以当我像这样运行查询时,


$projects = Project::leftJoin('images', 'projects.id', '=', 'images.project_id')->get();

因此,如果我在图像表中列出了 4 个图像,在项目表中列出了一个记录,则使用我用于该项目的所有不同图像,我会得到 4 个具有相同信息的项目的结果。


我如何限制它只显示一个 is_default 设置为 1 的项目记录,如果不存在,它将显示一个虚拟图像。


12345678_0001
浏览 96回答 2
2回答

蝴蝶不菲

使用 first() 获取单个记录。将表中的数据提取到 $projects 后,使用以下条件If(count($projects) > 0){ //Image is existing. Use image for for doing something}else{//No image found. Use defult image}希望能帮助到你
随时随地看视频慕课网APP
我要回答