搜索功能在相关 table 中查找参数值
search function look for parameter's value in related table
我有 2 个表,商家和交易。商家有 (mid,name,age),交易有 (id,mid,order_no,)。我已经使用 eagerloading 显示了像 (orderid,name) 这样的数据。现在我在顶部有一个搜索功能,我可以通过商家名称搜索所有订单。我怎么做?我正在尝试这样的事情
public function search($search){
$query = Transaction::with('themerchant')
->join('merchants','transactions.mid', '=', 'merchants.mid' )
->select('merchants.name', '=' , '%'.$search.'%')->paginate(10);
return $query;
}
哦,你正在使用 eagerLoading
这样做
public function search($search){
return Transaction::with(['themerchant' => function($query){
$query->where('name', 'like', '%'.$search.'%');
}])->paginate(10);;
}
如果您想要完全匹配的商家,请像这样更改位置
...
->where('name', '=' , $search)
...
如果您想使用加入
public function search($search){
return Transaction::join('merchants', 'merchants.mid', '=', 'transactions.mid')
->where('merchants.name', 'like', '%'.$search.'%')
->get();
}
我有 2 个表,商家和交易。商家有 (mid,name,age),交易有 (id,mid,order_no,)。我已经使用 eagerloading 显示了像 (orderid,name) 这样的数据。现在我在顶部有一个搜索功能,我可以通过商家名称搜索所有订单。我怎么做?我正在尝试这样的事情
public function search($search){
$query = Transaction::with('themerchant')
->join('merchants','transactions.mid', '=', 'merchants.mid' )
->select('merchants.name', '=' , '%'.$search.'%')->paginate(10);
return $query;
}
哦,你正在使用 eagerLoading 这样做
public function search($search){
return Transaction::with(['themerchant' => function($query){
$query->where('name', 'like', '%'.$search.'%');
}])->paginate(10);;
}
如果您想要完全匹配的商家,请像这样更改位置
...
->where('name', '=' , $search)
...
如果您想使用加入
public function search($search){
return Transaction::join('merchants', 'merchants.mid', '=', 'transactions.mid')
->where('merchants.name', 'like', '%'.$search.'%')
->get();
}