質問: 単純なクロージャベースのグローバルクエリスコープを追加しようとしています。 ``` // Order.php protected static function booted() { dd('here'); static::addGlobalScope('test', function ($query) { $query->where('amount', '>', 50); }); }Copy code ``` `Order::toSql()`を実行すると、次のSQLステートメントのみが生成されます:`"select * from "orders""` 。ただし、グローバルクエリスコープに追加した追加の制約は生成されません。 また、史上最高のデバッグツール(`dd()`ステートメント)が実行されていません。これは、起動されたメソッドが呼び出されていないことを示している可能性があります。 それで、私は何を間違えましたか?私はドキュメントに書かれていることを正確に行いました。 booted()メソッドはいつ呼び出されますか?
回答: ### 答え : #### 解決: `boot`メソッド名はLaravelの最後のバージョン(`7.x``booted`変更されているため、これに注意してください。そうしないと機能しません。 ドキュメントで使用しているLaravelのバージョンを常に設定することを忘れないでください(右上隅にバージョンを選択できるドロップダウンがあります)