【发布时间】:2016-05-09 16:46:33
【问题描述】:
我正在使用 Laravel 5.2 和 eloquent 模型与我的数据库进行交互,我想知道查询何时实际发送到服务器?
我正在开发一个搜索/排序栏,需要根据显示的值构建查询。例如:(“”表示没有选择值)
目的地->巴黎机场->""排序->""
所以我现在正在根据 if else 语句构建我的查询。根据填写的值构建许多不同的查询。即(查询上述值)
if(Destination != "" && Airport == "" && Sort == "")
Flight::where(['destination']=>Destination)->get();
因此,对于这种方法的每种可能组合,我必须执行 9 次不同的操作。我想知道查询何时实际执行?当您在模型上调用 ->get() 方法时,似乎是这样?这是它的工作原理吗?如果是这样,我可以做这样的事情,这会让我的生活更轻松。 (伪代码)
$query = Flight();
if(Destination != "")
$query->where(['destination'=>Destination]
if(Airport != "")
$query->where(['airport'=>Airport])
etc...
也许是一个愚蠢的问题,但在谷歌搜索方面遇到了麻烦。
谢谢,
马特
【问题讨论】:
标签: php mysql laravel eloquent laravel-5.2