라우팅, 의존성 주입, 마이그레이션, 큐, 브로드캐스팅을 지원하는 표현력 있는 문법의 PHP 웹 애플리케이션 프레임워크입니다.
spatie/laravel-route-attributes
PHP 8 attribute를 컨트롤러 클래스와 메서드에 직접 지정해 라우트를 등록하는 Laravel 패키지입니다.
- 스타
- 883
- 포크
- 85
- 열린 이슈
- 0
- 마지막 커밋
- 그저께
어떤 프로젝트인가요?
laravel-route-attributes를 사용하면 Laravel 개발자는 라우트가 가리키는 컨트롤러 코드 옆에 라우트를 선언할 수 있습니다. 컨트롤러 메서드에 #[Get('my-route')] 같은 attribute를 추가하면 패키지가 이에 해당하는 Route::get 호출을 등록하므로, 별도의 routes 파일에서 라우트를 관리하지 않아도 됩니다.
이 패키지는 설정된 컨트롤러 디렉터리를 스캔하며, 일반적인 모든 HTTP 메서드와 리소스 컨트롤러용 Resource attribute 및 ApiResource 변형을 지원합니다. 라우트 이름, 미들웨어, prefix, 도메인, 그룹 정의, WhereUuid 또는 WhereNumber 같은 매개변수 제약 조건, 기본 매개변수 값, 스코프 바인딩, 소프트 삭제된 모델 바인딩도 attribute로 지정할 수 있습니다.
디렉터리마다 미들웨어, prefix, namespace를 설정할 수 있어 모듈형 애플리케이션에 적합합니다. 파일 패턴과 제외 패턴을 지정하면 스캔할 파일을 제한할 수 있습니다. 예를 들어 테스트 파일도 포함된 폴더에서 컨트롤러 파일만 스캔하도록 설정할 수 있습니다.
핵심 기능
- 01컨트롤러 클래스와 메서드에 PHP 8 attribute를 지정해 라우트를 등록합니다.
- 02모든 표준 HTTP 메서드와 여러 메서드 또는 모든 메서드에 대응하는 라우트를 지원합니다.
- 03Resource 및 ApiResource attribute로 only/except와 이름 지정 옵션이 포함된 리소스 라우트를 생성합니다.
- 04미들웨어, prefix, 도메인, 라우트 이름, 매개변수 제약 조건을 attribute로 지정할 수 있습니다.
- 05디렉터리별 미들웨어, 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 attribute를 컨트롤러 클래스와 메서드에 직접 지정해 라우트를 등록하는 Laravel 패키지입니다. laravel-route-attributes를 사용하면 Laravel 개발자는 라우트가 가리키는 컨트롤러 코드 옆에 라우트를 선언할 수 있습니다. 컨트롤러 메서드에 #[Get('my-route')] 같은 attribute를 추가하면 패키지가 이에 해당하는 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에 맞춰 재작성된 CodeIgniter의 4번째 메이저 버전으로, 가볍고 빠르며 유연한 PHP 풀스택 웹 프레임워크입니다.
기존 Laravel 앱에 최소한의 설정만으로 스레드, 게시글, 카테고리를 추가하는 가벼운 포럼 패키지입니다.
Laravel 앱에서 로케일 접두사가 붙은 라우트, 브라우저 언어 감지, 번역 가능한 라우트 슬러그, 언어 선택기 헬퍼를 제공하는 i18n URL 현지화 패키지입니다.
웹 앱과 HTTP API 구축을 위한 빠르고 유연한 미니멀 Node.js 웹 프레임워크입니다.
tower와 hyper를 기반으로 구축한, 사용하기 편하고 모듈화된 Rust HTTP 라우팅 및 요청 처리 라이브러리입니다.