[英]Laravel Eloquent ORM get function working Confusion
我是laravel的新手,所以任何人都可以向我解释雄辩的ORM的get()函数到底做什么。 我有以下查询,我需要知道在哪一行查询数据库。
$propertiesQuery = Property::with('country', 'city','bannerInvoicesCount','rejectedBannerInvoicesCount')
->where('is_deleted','=',1);
if(Auth::user()->type == 'po') {
$propertiesQuery->where('user_id', '=', Auth::user()->id);
}
$propertiesQuery->orderBy('created_at', 'DESC');
$properties = $propertiesQuery->get();
现在,在上面的代码中,无论是查询db还是调用get()函数时,我都曾经访问过Model。 我无法理解其内部工作。 正是在哪个语句上执行查询。
@Raza在eloquant $ propertiesQuery-> get()步骤之前,它会像这样准备查询:
select * from table where user_id=1
当您调用/触发$ propertiesQuery-> get()方法时,它会将查询转发到数据库并针对您的查询获取记录。 像,通常我们在普通sql中执行:
eg: mysql_query($query);
then mysql_fetch_assoc() etc methods
因此get()方法包含以下内容:执行查询并以数组格式返回所有记录。
希望对您有帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.