首页 > 解决方案 > 我需要首先显示最新条目

问题描述

我的控制器查询以如下方式显示数据(在 laravel 中)

public function index(Request $request)
{
    $data = $this->jobRepository->prepareJobData();
    $data['input'] = $request->all();

    return view('web.jobs.index')->with($data);
}

我的 PrepareJobdata 功能

 public function prepareJobData()
{
    $data['jobTypes'] = JobType::pluck('name', 'id');
    $data['jobCategories'] = JobCategory::pluck('name', 'id');
    $data['jobSkills'] = Skill::pluck('name', 'id');
    $data['genders'] = Job::NO_PREFERENCE;
    $data['careerLevels'] = CareerLevel::pluck('level_name', 'id');
    $data['functionalAreas'] = FunctionalArea::pluck('name', 'id');

    return $data;
}

标签: phplaravel

解决方案


在您的prepareJobData()方法中,您可以链接它:

->orderBy('created_at', 'desc')->get();

// or simply
->latest()->get(); // ordered by created_at

编辑:所以,它似乎正在做一些可能不是最好的方法的格式化。但无论如何,这样的事情应该可以解决问题。

public function prepareJobData()
{
    $data['jobTypes'] = JobType::latest()->pluck('name', 'id');
    $data['jobCategories'] = JobCategory::latest()->pluck('name', 'id');
    $data['jobSkills'] = Skill::latest()->pluck('name', 'id');
    $data['genders'] = Job::NO_PREFERENCE;
    $data['careerLevels'] = CareerLevel::latest()->pluck('level_name', 'id');
    $data['functionalAreas'] = FunctionalArea::latest()->pluck('name', 'id');

    return $data;
}

推荐阅读