Repolode
spatie

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. 1

    Composerでパッケージをインストールします

    composer require spatie/laravel-route-attributes
  2. 2

    設定ファイルを公開します

    php artisan vendor:publish --provider="Spatie\RouteAttributes\RouteAttributesServiceProvider" --tag="config"
  3. 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 の数値は毎日更新されます。

関連プロジェクト