2016-09-16 114 views
0

我希望能够得到解决这个问题的办法。我有不同的表格,我怎样才能制作一个自定义集合来从多个表中收集我想要的内容(当然,基于逻辑关系),并使这个集合作为一个json对象在laravel中使用雄辩的形式返回。使用Laravel从不同的表中收集不同的信息

+1

请出示这些表,使其更容易帮助。 –

+0

好的,只是我想知道如何使用自定义集合来使用laravel的雄辩从表中收集数据,然后将此集合转换为json对象以成为http动词的响应。 –

回答

0

你可以使用这个语法:

$myCollection = DB::table('Table1')->leftJoin('Table2','Table1.id','=','Table2.whatever'‌​‌​‌​‌​)->select('‌​Table1​.*','Table2.whatever')->orderBy('Table1.custom','DESC')->get‌​()‌​; 

如果使用默认 刚刚返回集合这会是JSON或可以退货,像这样

return response()->json(['Collection'=>$myCollection]); 
+0

@Noy Yasein QB模式是一个很好的解决方案,但是关于雄辩的结构呢,特别是如果我们有很多列,只需要返回几列信息。 –

+0

如果你希望你可以从你的查询中排除它们,你可以很容易地实现这一点,就像你从代码中看到的一样,你可以尽可能多地选择整个表或特定列,只需用逗号分隔它们就可以返回最终的集合。如果结果很多,则调用对象的任何成员或索引 – Nour