如何在laravel的blade文件中显示最新(';updated_at';)记录


How to display latest('updated_at') records in blade file of laravel

我正在用laravel做项目。在我的项目中有两个表类别和子类别。subcategories表将categoryid作为外键。

subcategoryModel.php具有以下功能

public function category(){
    return $this->belongsTo('App'Category');
}

在我的刀片文件中,我使用类别对象显示我的子类别,如下所示,

blade.php

    <div class="col-sm-6 col-align-left">
        @foreach($category as $c)
             <div class="form-group clearfix">
                   @if($c->subcategories->count() > 0)
                   <h4><b>Subcategories: </b></h4>
                   <div class="form-group clearfix">
                    @foreach($c->subcategories as $subcategory)
                        <h4>{{$subcategory->subcategoryname}}</h4>
                    @endforeach
                   </div>
                   @endif
      <h4><a href="{{ url('subcategories/'.$c->categoryid.'') }}" class =        "btn btn-primary">Add Subcategories</a></h4>
     </div>
    @endforeach
    </div>

这显示了正确的数据,但现在我想按更新/创建数据的顺序显示数据。有没有办法按照要求显示数据?我想把一些东西放进刀片文件本身。如何做到这一点?请提出建议。

你不应该在刀片中做这样的事情。刀片应尽可能保持静音。主要的事情应该在控制器中完成,然后传递给刀片。你可以在你的控制器中这样做:

    $categories = Category::with(array('subcategories' => function($query) {
        $query->orderBy('created_at', 'DESC');
    }))->get();

现在将对category对象中的子类别进行排序。

@foreach($c->subcategories()->orderBy('updated_at','asc')->get() as $subcategory)
     <h4>{{$subcategory->subcategoryname}}</h4>
@endforeach

编辑:我确实喜欢OP在刀片文件本身中要求的另一个答案