我正在使用laravel eloquent查询数据库,如下所示。
PostModel::with('images')->where('id', $id)->where('is_active', 1)->paginate(10);
在某些情况下,某些帖子没有图片,因此images
属性有一个空数组。我需要知道的是如何丢弃empty array
images
的结果。我不想运行foreach
并删除这些项目,而我正在查询解决方案,例如放弃这些项目的选择。感谢。
答案 0 :(得分:1)
阅读Eloquent的 has(), whereHas()方法,网址:http://laravel.com/docs/5.1/eloquent-relationships#querying-relations(标题:查询关系存在 )
溶液:
PostModel::with('images')->has('images')->where('id', $id)->where('is_active', 1)->paginate(10);
或您可以使用 join()(效率更高):http://laravel.com/docs/5.1/queries#joins