ルーティング、依存性注入、マイグレーション、キュー、イベントブロードキャストを備えた、表現力豊かな構文のPHP Webアプリケーションフレームワーク。
spatie/laravel-route-attributes
コントローラーのクラスやメソッドにPHP 8属性を付けてルートを登録できるLaravelパッケージです。
- スター
- 883
- フォーク
- 85
- 未解決の Issue
- 0
- 最終コミット
- 一昨日
これは何?
laravel-route-attributesを使うと、Laravel開発者はルートの処理先となるコントローラーのコードのすぐそばにルートを宣言できます。コントローラーメソッドに#[Get('my-route')]のような属性を追加すると、パッケージが対応するRoute::get呼び出しを登録するため、別のroutesファイルでルートを管理する必要がなくなります。
このパッケージは設定したコントローラーディレクトリをスキャンし、一般的なHTTP動詞すべてに対応します。また、リソースコントローラー用のResource属性と、その派生であるApiResourceも利用できます。属性ではルート名、middleware、prefix、domain、グループ定義、WhereUuidやWhereNumberなどのパラメーター制約、パラメーターのデフォルト値、スコープ付きバインディング、論理削除されたモデルのバインディングも指定できます。
ディレクトリごとにmiddleware、prefix、namespaceを設定できるため、モジュール化されたアプリケーションに適しています。ファイルパターンと除外パターンを使えば、テストも含むフォルダーからコントローラーファイルだけを対象にするなど、スキャンするファイルを絞り込めます。
主な機能
- 01コントローラーのクラスやメソッドに付けたPHP 8属性でルートを登録できます。
- 02標準的なHTTP動詞すべてに加え、複数の動詞や任意の動詞に対応するルートをサポートします。
- 03Resource属性とApiResource属性を使って、only/exceptや命名オプションを指定したリソースルートを生成できます。
- 04middleware、prefix、domain、ルート名、パラメーター制約を属性で指定できます。
- 05ディレクトリごとにmiddleware、prefix、namespaceを設定できます。
- 06ファイルパターンと除外オプションで、スキャン対象のファイルを制御できます。
ユースケース
- Laravelアプリケーションで、ルートをコントローラーと同じ場所にまとめる。
- コントローラーをモジュールごとのディレクトリに分けているLaravelプロジェクトで、ルートを整理する。
- コントローラーに直接宣言したリソースルートを使ってREST APIを構築する。
クイックスタート
- 1
Composerでパッケージをインストールします
composer require spatie/laravel-route-attributes - 2
設定ファイルを公開します
php artisan vendor:publish --provider="Spatie\RouteAttributes\RouteAttributesServiceProvider" --tag="config" - 3
コントローラーのクラスとメソッドにルート属性を追加します
収録されている特集
トピック
よくある質問
- laravel-route-attributes とは?
- コントローラーのクラスやメソッドにPHP 8属性を付けてルートを登録できるLaravelパッケージです。 laravel-route-attributesを使うと、Laravel開発者はルートの処理先となるコントローラーのコードのすぐそばにルートを宣言できます。コントローラーメソッドに#[Get('my-route')]のような属性を追加すると、パッケージが対応するRoute::get呼び出しを登録するため、別のroutesファイルでルートを管理する必要がなくなります。
- laravel-route-attributes は無料で使えますか?ライセンスは?
- laravel-route-attributes は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- laravel-route-attributes は今もメンテナンスされていますか?
- 活発にメンテナンス中。laravel-route-attributes の最終コミットは 2026年11月5日 です。
- laravel-route-attributes は何に使えますか?
- Laravelアプリケーションで、ルートをコントローラーと同じ場所にまとめる。 コントローラーをモジュールごとのディレクトリに分けているLaravelプロジェクトで、ルートを整理する。 コントローラーに直接宣言したリソースルートを使ってREST APIを構築する。
- laravel-route-attributes のインストール方法は?
- Composerでパッケージをインストールします: composer require spatie/laravel-route-attributes 設定ファイルを公開します: php artisan vendor:publish --provider="Spatie\RouteAttributes\RouteAttributesServiceProvider" --tag="config" コントローラーのクラスとメソッドにルート属性を追加します
- laravel-route-attributes はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/spatie/laravel-route-attributes
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
現代的なPHP向けに書き直された、軽量で高速かつ柔軟なPHPフルスタックWebフレームワーク。CodeIgniterの第4世代です。
既存のLaravelアプリに、最小限の設定でスレッド、投稿、カテゴリーを追加できる軽量なフォーラムパッケージです。
Laravel向けのi18n URLローカライズパッケージ。ロケール付きルート、ブラウザー言語の検出、翻訳可能なルートスラッグ、言語セレクター用ヘルパーを提供します。
Node.jsでWebアプリやHTTP APIを構築するための、高速で自由度の高いミニマルなWebフレームワーク。
towerとhyperを基盤とする、Rust向けの使いやすくモジュール化されたHTTPルーティング・リクエスト処理ライブラリ。