【问题标题】:Laravel query by custom attributeLaravel 通过自定义属性查询
【发布时间】:2019-04-08 08:55:15
【问题描述】:

我有一个关于使用自定义属性查询 eloquent 模型的问题。

我有一个类/模型Item,并且我创建了一个属性:

  function getWeeklySalesCountAttribute()
  {
     return rand(3, 1000); //real logic is in db
  }

所以在我的控制器中,我想首先挑选每周销售额最高的商品并对其进行分页

    $items = Item::where(function($item){
        //find the items with highest weekly sales
    })->paginate(10); 

如果我设法拉出$item->weekly_sales_count 属性,我该如何实现这一目标

【问题讨论】:

  • 我不确定。但到目前为止我猜,类“项目”是你的雄辩类还是普通类?
  • 它是一个 Eloquent 类(模型)

标签: php laravel laravel-5 laravel-5.8


【解决方案1】:

你不能使用 Eloquent,你需要使用过滤器。

 $result = Model::get()->filter(function($item) {
    return $item->weekly_sales_count > 3;
 });

【讨论】:

  • 谢谢,让我试试,但任务是过滤销售额最高的并对其进行分页,那么使用过滤器的正确方法是什么。如果你能把我链接到解释 filter 的地方,我会很高兴
猜你喜欢
  • 1970-01-01
  • 2018-11-15
  • 1970-01-01
  • 2011-11-29
  • 1970-01-01
  • 2019-10-21
  • 1970-01-01
  • 2021-06-13
  • 1970-01-01
相关资源
最近更新 更多