douzhuo6270 2015-01-12 06:47
浏览 109
已采纳

Laravel Eloquent ORM让功能混乱

I am new to laravel so can anybody explain me that what exactly get() function of eloquent ORM does. I have following query and I need to know on which line the database is queried.

$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();

Now in above code I have accessed Model once whether that is the point when db is queried or when I have called get() function. I am not been able to comprehend the internal working of this. That exactly on which statement the query is executed.

  • 写回答

1条回答 默认 最新

  • douzhanglun4482 2015-01-12 07:11
    关注

    @Raza before eloquant $propertiesQuery->get() step, it prepare your query like:

    select * from table where user_id=1
    

    and when you call/trigger the $propertiesQuery->get() method, it forward your query to database and fetch the records against your query. like, normally we do in plain sql:

    eg: mysql_query($query);
    then mysql_fetch_assoc() etc methods
    

    so get() method contains on: execute the query and return all the records in the array format.

    I hope it will help you.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?