根据Laravel中的特定值(字符串)对用户进行排序

时间:2017-05-26 05:17:48

标签: laravel laravel-5 laravel-5.2

我想根据具体值对用户进行排序。例如,我有Users table并且与Profiles Table有关系。在Profiles table我已保存用户Country (string)

现在,我想首先对特定国家/地区用户进行排序,然后对其他国家/地区用户进

请指导我如何在Laravel中完成此操作。 感谢

3 个答案:

答案 0 :(得分:0)

您可以使用该代码。

.main-container {
  height: 100vh;
  background: url("../imgs/background.jpg");
  background-size: cover;
  background-position: 0 0;
  background-repeat: no-repeat;
  transition: background 1s ease-out;
}

答案 1 :(得分:0)

我没有检查过这个,但你可以尝试这个解决方案。它会对你有所帮助。

$users = Users::with(['profiles' => function ($query) {
    $query->orderBy("country='your country name'", 'DESC')
    $query->orderBy('country', 'ASC')
}])->get();

答案 2 :(得分:0)

您可以使用此

$users = Users::with(['profiles' => function ($query) use($country) {
$query->orderBy(DB::raw('case when country="'.$country.'" then 1 else 2 end'))->orderBy('country', 'ASC');
}])->get();