2016-12-14 14 views
5
use App\Order; 

public function show(Order $order){ 

     $data = $order->all(); 
     return dd($order->getQueryLog()); 

ben laravel içinde, ben veri getirmek için anlamlı kullanmayı deneyin yeniyimlaravel Eloquent ekran sorgusu

sorum, benim sorgu görüntülemek için herhangi bir yoldur log? hepsi gerçek gösterecektir, siz Laravel Debugbar kullanabilirsiniz

DB::enableQueryLog(); 
DB::getQueryLog(); 

gerçek sorguları görmek isterseniz:

ben önce bunu etkinleştirmeniz gerekir getQueryLog() kullanmak için getQueryLog(); ama onun

+0

Olası yinelenen [Nasıl laravel 5 infaz sorgu alınır? DB :: getQueryLog boş diziyi döndürüyor] (http://stackoverflow.com/questions/27753868/how-to-get-the-query-executed-in-laravel-5-dbgetquerylog-returning-empty-arr) –

cevap

8

Önce sorgu günlüğünü

$queries = DB::getQueryLog(); 

görmek için o zaman kodunun altına kullanabilirsiniz

DB::connection()->enableQueryLog(); 

kullanarak bu yapılabilir sorgu günlüğünü etkinleştirmek zorunda sorgulama

$last_query = end($queries); 

Günlüğe kaydetme hakkında daha fazla bilgi için bkz. buarasında

Örnek

public function show(Order $order){ 
     \DB::connection()->enableQueryLog(); 
     $data = $order->all(); 
     $queries = \DB::getQueryLog(); 
     return dd($queries); 
} 
+0

Denedim Senin yolun ve ben [] –

+0

var sadece bu DB sorgu için mi? Ben eloquent kullanıyorum ve ben laravel sorgusu –

+0

o da iyi çalıştığını görmek istiyorum, –

1

çalışmıyor çalıştı Mevcut istek sırasında oluşturulan Laravel sorguları. Bazen ->toSql() da yararlıdır. Eğer son çalıştırılan görmek istiyorsanız