Sortby 和 orderby 不起作用 laravel
Sortby and orderby not working laravel
大家好,出于某种原因,当我尝试使用 sortby 或 orderby 时,它不起作用。谁能帮我?提前致谢
这是我试过的代码,我想获取最新的时间戳,但它不起作用。
public function getTest($id){
$data = test::where('user_id',$id)->sortByDesc('created_at')->get();
//I also tried doing this
$data = test::where('user_id',$id)->orderBy('created_at', 'desc')->get();
if(count($data)>0){
return view('test',compact('data'));
}else{
return view('test');
}
}
尝试:
$data = test::where('user_id', $id)->orderBy('created_at', 'desc')->first();
这会将 table 中的行排序为 created_at
。
希望对您有所帮助!
如果你想得到最旧的created_at
这样查询会更容易
$data = test::where('user_id', ,'=', $id)->oldest();
按降序获取用户的测试。
这里有一个 "pro" 提示:您应该在 Test
和 User
之间设置一个 relation。并输入你的方法(你的路线看起来像 Route::get'(/users/{user}/tests', 'UserTestsController@index');
。然后你可以像这样写你的查询:
public function index(User $user)
{
$data = $user->tests()->oldest();
return view('tests.index')
->with('data', $data);
}
大家好,出于某种原因,当我尝试使用 sortby 或 orderby 时,它不起作用。谁能帮我?提前致谢
这是我试过的代码,我想获取最新的时间戳,但它不起作用。
public function getTest($id){
$data = test::where('user_id',$id)->sortByDesc('created_at')->get();
//I also tried doing this
$data = test::where('user_id',$id)->orderBy('created_at', 'desc')->get();
if(count($data)>0){
return view('test',compact('data'));
}else{
return view('test');
}
}
尝试:
$data = test::where('user_id', $id)->orderBy('created_at', 'desc')->first();
这会将 table 中的行排序为 created_at
。
希望对您有所帮助!
如果你想得到最旧的created_at
这样查询会更容易
$data = test::where('user_id', ,'=', $id)->oldest();
按降序获取用户的测试。
这里有一个 "pro" 提示:您应该在 Test
和 User
之间设置一个 relation。并输入你的方法(你的路线看起来像 Route::get'(/users/{user}/tests', 'UserTestsController@index');
。然后你可以像这样写你的查询:
public function index(User $user)
{
$data = $user->tests()->oldest();
return view('tests.index')
->with('data', $data);
}