PHP-фреймворк для веб-приложений с выразительным синтаксисом: маршрутизация, внедрение зависимостей, миграции, очереди и трансляция событий.
spatie/laravel-route-attributes
Пакет Laravel, который регистрирует маршруты по атрибутам PHP 8, размещённым непосредственно в классах контроллеров и их методах.
- Звёзды
- 883
- Форки
- 85
- Открытые issues
- 0
- Последний коммит
- позавчера
Что это?
laravel-route-attributes позволяет разработчикам Laravel объявлять маршруты рядом с кодом контроллеров, на которые они указывают. Если добавить к методу контроллера атрибут, например #[Get('my-route')], пакет зарегистрирует соответствующий вызов Route::get, поэтому маршруты больше не нужно поддерживать в отдельном файле routes.
Пакет сканирует настроенные директории с контроллерами и поддерживает все распространённые HTTP-методы, а также атрибут Resource для ресурсных контроллеров и его вариант ApiResource. Атрибуты также позволяют задавать имена маршрутов, middleware, префиксы, домены, определения групп, ограничения параметров, такие как WhereUuid или WhereNumber, значения параметров по умолчанию, scoped bindings и привязку моделей с мягким удалением.
Для каждой директории можно настроить собственные middleware, префиксы и пространства имён — это удобно для модульных приложений. Шаблоны файлов и шаблоны исключений позволяют ограничить сканирование нужными файлами, например только файлами контроллеров в папке, где также хранятся тесты.
Ключевые возможности
- 01Регистрация маршрутов с помощью атрибутов PHP 8 в классах контроллеров и их методах.
- 02Поддержка всех стандартных HTTP-методов, а также маршрутов для нескольких методов и любого метода.
- 03Атрибуты Resource и ApiResource создают ресурсные маршруты с настройками only/except и именования.
- 04Атрибуты для middleware, префиксов, доменов, имён маршрутов и ограничений параметров.
- 05Настройка директорий с отдельными middleware, префиксами и пространствами имён для каждой директории.
- 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?
- Пакет Laravel, который регистрирует маршруты по атрибутам PHP 8, размещённым непосредственно в классах контроллеров и их методах. laravel-route-attributes позволяет разработчикам Laravel объявлять маршруты рядом с кодом контроллеров, на которые они указывают. Если добавить к методу контроллера атрибут, например #[Get('my-route')], пакет зарегистрирует соответствующий вызов Route::get, поэтому маршруты больше не нужно поддерживать в отдельном файле routes.
- laravel-route-attributes можно использовать бесплатно? Какая у него лицензия?
- laravel-route-attributes распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- laravel-route-attributes всё ещё поддерживается?
- Активно поддерживается. Последний коммит в laravel-route-attributes — 5 нояб. 2026 г..
- Для чего можно использовать 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 проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Лёгкий, быстрый и гибкий полнофункциональный веб-фреймворк для PHP — четвёртая мажорная версия CodeIgniter, переписанная для современного PHP.
Лёгкий форумный пакет для Laravel: добавляет темы, сообщения и категории в существующее приложение с минимальной настройкой.
Пакет Laravel для локализации URL: маршруты с префиксом локали, определение языка браузера, переводимые сегменты маршрутов и вспомогательные функции для переключателя языков.
Быстрый, не навязывающий подходов минималистичный веб-фреймворк для Node.js, предназначенный для создания веб-приложений и HTTP API.
Эргономичная модульная библиотека для маршрутизации HTTP-запросов и их обработки в Rust на базе tower и hyper.