0
考慮這條線:在Laravel Eloquent中,Model :: get()是否實際獲取結果?
$nodes = Node::orderBy("id", "desc")->take(5)->get()
上述行執行後,被查詢的數據庫(被返回的結果)?
考慮這條線:在Laravel Eloquent中,Model :: get()是否實際獲取結果?
$nodes = Node::orderBy("id", "desc")->take(5)->get()
上述行執行後,被查詢的數據庫(被返回的結果)?
是的,它被查詢,你應該在$nodes
結果。
->get()
到底是什麼提示查詢的執行。在調用之前,您可以繼續向查詢添加條件。在Laravel文檔的Advanced Wheres部分有一些很好的例子
注意 - 如果你想看看發生了什麼事情,你可以隨時使用DB::getQueryLog()
$queries = DB::getQueryLog();
像這樣的東西(很快速和骯髒的)作品於View
:
@foreach(DB::getQueryLog() as $query)
<pre> {{ print_r($query) }}</pre>
@endforeach
感謝您的回答。我不確定'get()'實際上是否會獲取結果,因爲之後您仍然可以執行諸如'$ nodes-> first()'之類的操作。 – Dave
啊,好的。他們在查詢構建器和從' - > get()'返回的集合上實現了'first()'。查看API指南 - 在集合上:http://laravel.com/api/class-Illuminate.Support.Collection.html#_first - 以及數據庫查詢構建器:http://laravel.com /api/class-Illuminate.Database.Query.Builder.html#_first – msturdy