2016-05-18 5 views
2

in meinem Fall, ich möchte von bestimmten Benutzer, mit bestimmten Zeitbereich abgeschlossene Aufträge angezeigt werden, ist hier mein CodeCall to undefined Methode Illuminate Database Abfrage JoinClause :: zwischen denen()

$orders = DB::table('user_profiles') 
      ->leftJoin('orders', function($join) use ($status,$order){ 
       $join->on('user_profiles.id','=','orders.id_user') 
        ->where('orders.status','=',$status) 
        ->whereBetween('orders.created_at',[$from,$to]); 
      }) 
      ->selectRaw('user_profiles.*, count(orders.id_user) as order_try_count') 
      ->groupBy('user_profiles.id') 
      ->orderBy('order_try_count',$order) 
      ->paginate(15); 

aber ich bekomme Aufruf zu undefinierter Methode Illuminate \ Database \ Query \ JoinClause :: whereBetween(), was soll ich tun, um dies zu lösen? Vielen Dank ...

+0

seine in Query Builder https://laravel.com/api/5.2/Illuminate/Database/Query/Builder.html#method_whereBetween – aimme

Antwort

0

Es gibt keine Methode Aufruf 'zwischen denen' Verwendung 'bei'

$orders = DB::table('user_profiles') 
     ->leftJoin('orders', function($join) use ($status,$order){ 
      $join->on('user_profiles.id','=','orders.id_user') 
       ->where('orders.status','=',$status) 
       ->whereIn('orders.created_at',[$from,$to]); 
     }) 
     ->selectRaw('user_profiles.*, count(orders.id_user) as order_try_count') 
     ->groupBy('user_profiles.id') 
     ->orderBy('order_try_count',$order) 
     ->paginate(15); 
Verwandte Themen