我试图从多个关系中获取数据。但我不想以多个查询结束。所以list(collection._get_collection().aggregate(mongo_query["pipeline"], allowDiskUse=True))
方法对我来说不起作用。
我想使用连接来获取所需的数据,但是laravel会覆盖密钥(如果它们是重复的)。有没有办法将联接的结果保存为关系。下面这样的事情(我知道加入不正确)。
with
如果他们都有一个' id'它被另一方覆盖。所以我希望将category。*结果作为一种关系,这样我就可以在使用with方法时尽可能地调用Post::select('post.*', 'category.*')->join('category');
。
有没有办法做到这一点?
答案 0 :(得分:0)
您可以使用whereHas和orWhereHas方法
检查此链接: http://laravel.io/forum/04-19-2014-many-to-many-to-many-in-wherehas
和Laravel文档: https://laravel.com/docs/5.1/eloquent-relationships