Мой рабочий код:
$query = DB::table('order');
$fromorderdate = $request->get('fromorderdate') or "";
$toorderdate = $request->get('toorderdate') or "";
$fromdeliverydate = $request->get('fromdeliverydate') or "";
$todeliverydate = $request->get('todeliverydate') or "";
$orderstatus = $request->get('orderstatus') or "";
$ordertype = $request->get('ordertype') or "";
if (Input::get('weightrange')) {
$weightrangearray = explode('.', Input::get('weightrange'));
$weightrange1 = $weightrangearray[0];
$weightrange2 = $weightrangearray[1];
}
if ($fromorderdate != "" && $toorderdate != "") {
$query->whereBetween('orderdate', [$fromorderdate, $toorderdate]);
$makequery = true;
}
if ($fromdeliverydate && $todeliverydate) {
$query->whereBetween('orderdate', [$fromdeliverydate, $todeliverydate]);
$makequery = true;
}
if ($fromdeliverydate && $todeliverydate) {
$query->whereBetween('orderdate', [$weightrange1, $weightrange2]);
$makequery = true;
}
if ($orderstatus) {
$query->where('orderstatus', $orderstatus);
$makequery = true;
}
if ($ordertype) {
$query->where('ordertype', $ordertype);
$makequery = true;
}
echo $query->toSql();
if ($makequery) {
$order = $query->get();
}
Этот код работает нормально, но точная проблема в том, что я не могу использовать красноречивые отношения с этой переменной $order
.
Что я пытался $query=new Order();// order is my model name
но sql запрос не работает должным образом.
есть ли способ, чтобы я мог преобразовать этот экземпляр $order
db в eloquent, чтобы я мог использовать мои отношения в поле зрения.