dongqing4070 2013-01-11 04:43
浏览 67
已采纳

Laravel设置了自动WHERE子句

I use models that extend a generic_model, which in turn extends Eloquent (so that I have several crud methods I use already set to be inherited).

A lot of the tables I use invoke soft delete, which needs a WHERE clause of...

WHERE deleted = 0

Is there a way to make Laravel behave in such a way that this WHERE clause is automatically included in all queries and all queries to objects that are related to one another?

e.g.

pages where id = 5 and deleted = 0

and then...

images where page_id = 5 and deleted = 0
  • 写回答

2条回答 默认 最新

  • doushi3715 2013-06-16 18:58
    关注

    if you're using laravel 3 this is what you needs

    on your model

    public function query()
    {
    
        $query = parent::query();
    
        $query->where('deleted','=','0');
    
        return $query;
    }
    

    if you're using laravel 4 just change the method query for newQuery

    public function newQuery()
    {
    
        $query = parent::newQuery();
    
        $query->where('deleted','=','0');
    
        return $query;
    }
    

    reference

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波
  • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗
  • ¥15 钢筋实图交点识别,机器视觉代码
  • ¥15 如何在Linux系统中,但是在window系统上idea里面可以正常运行?(相关搜索:jar包)
  • ¥50 400g qsfp 光模块iphy方案
  • ¥15 两块ADC0804用proteus仿真时,出现异常
  • ¥15 关于风控系统,如何去选择