laravel 定義模型的區域性查詢作用域方法沒有PhpStorm沒有程式碼提示

FXH_發表於2023-04-18

使用 PhpStorm 作為開發編輯器。在 laravel 框架定義模型的區域性查詢作用域方法 scopeWithOrder(),呼叫時沒有程式碼提示。
請問怎麼才能讓 PhpStorm 提示模型定義的區域性查詢作用域方法?
下面是我的示例程式碼:
Topic模型

class Topic extends Model
{
    use Illuminate\Database\Eloquent\Factories\HasFactory;
    use Illuminate\Database\Query\Builder;
    /**
     * @param Builder $query
     * @param string $sort
     * @return Builder
     */
    public function scopeWithOrder($query, $sort = 'asc')
    {
        $query->orderBy('updated_at', $sort);
    }
}

Topic控制器

class TopicsController extends Controller
{
    ...
    public function index(Topic $topic, Request $request)
   {
           $topics = $topic->with(['user', 'category'])->withOrder($request->sort)->paginate(8);
        return view('topics.index', compact('topics'));
  }
    ...
}

呼叫 withOrder 區域性查詢作用域方法時沒有提示,並且呼叫之後的所有鏈式方法也都失去了提示,這樣開發很是不方便。

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章