BadMethodCallException:方法 Illuminate\Database\Eloquent\Collection::orderBy 不存在

Eri*_*tas 3 php laravel eloquent

当我尝试使用 orderBy() eloquent 的方法对输出数据进行排序时,我看到以下消息:BadMethodCallException: Method Illuminate\Database\Eloquent\Collection::orderBy 不存在。在文件 C:\xampp\htdocs\cerusbank\vendor\laravel\framework\src\Illuminate\Macroable\Traits\Macroable.php 的第 103 行。

以下是我正在研究的方法:

public function getCardStatements(Request $request){
       if($request->id){
           $cardStatements = Card::with('statements')->where('id', $request->id)->get();
           return response()->json($cardStatements->orderBy('statements.registration_date', 'asc'));
        }
        return response()->json(array('return'=>false));
Run Code Online (Sandbox Code Playgroud)

Muh*_*air 5

使用后->get(),这成为一个集合。您将需要使用集合中的方法。orderBy集合中不存在。你可以用sortBy它代替。

以下是您可以使用的所有可用的收集方法。 https://laravel.com/docs/8.x/collections#available-methods