通过比较日期过滤视图内的 laravel 集合?
Filter a laravel collection inside a view by comparing dates?
我试图通过比较到期日期和今天的日期来过滤一组对象,但我无法让它正常工作。任何人都可以看一下代码。我确定我在这里遗漏了一些东西。我到处搜索并找到了很多示例,但 none 正在运行。
这很好地符合要求,但是对于 9 个对象的列表,其中 3 个对象的到期日期设置为 2012 年,它return 没有来自集合的任何结果。
控制器
public function classifieds()
{
$myclassifieds = Auth::user()->classifieds;
return view('account.classifieds')->with(['allclassifieds'=>$myclassifieds]);
}
查看
@if(count($allclassifieds->where('expired_on','<', Carbon\Carbon::now() ) ) > 0)
//Something here
@endif
直接访问值expired_on
@foreach($allclassifieds as $classified)
@if($classified->expired_on > Carbon\Carbon::now())
// show classified
@endif
@endforeach
您可以通过将 expired_on 属性 添加到模型中的 $dates
数组来使 expired_on 默认成为 Carbon 实例:
protected $dates = ['created_at', 'updated_at', 'expired_on'];
现在expired_on
总是returns一个Carbon实例
我试图通过比较到期日期和今天的日期来过滤一组对象,但我无法让它正常工作。任何人都可以看一下代码。我确定我在这里遗漏了一些东西。我到处搜索并找到了很多示例,但 none 正在运行。
这很好地符合要求,但是对于 9 个对象的列表,其中 3 个对象的到期日期设置为 2012 年,它return 没有来自集合的任何结果。
控制器
public function classifieds()
{
$myclassifieds = Auth::user()->classifieds;
return view('account.classifieds')->with(['allclassifieds'=>$myclassifieds]);
}
查看
@if(count($allclassifieds->where('expired_on','<', Carbon\Carbon::now() ) ) > 0)
//Something here
@endif
直接访问值expired_on
@foreach($allclassifieds as $classified)
@if($classified->expired_on > Carbon\Carbon::now())
// show classified
@endif
@endforeach
您可以通过将 expired_on 属性 添加到模型中的 $dates
数组来使 expired_on 默认成为 Carbon 实例:
protected $dates = ['created_at', 'updated_at', 'expired_on'];
现在expired_on
总是returns一个Carbon实例