경로가있는 Laravel 5.2 패키지를 만들려고합니다. Http/Controllers
폴더의 컨트롤러 (네임 스페이스 vendor\package\Http\Controllers\MyController
)가 있습니다. 별칭을 만들고 싶지만 어떻게해야할지 모르겠다.경로의 Laravel 패키지 컨트롤러 별칭
Route::get('myurl', '[email protected]');
내가 Application
클래스 API이 검색을 시도했지만이 정보를 찾을 수 없습니다 :
Route::get('myurl', vendor\package\Http\Controllers\MyController::class . '@action');
그러나 그런 : 나는 그런 routes.php
이 컨트롤러를 호출하고 싶지 않아요.
이 패키지 공급자의 코드는 작동하지 않습니다.
$this->app
->alias(vendor\package\Http\Controllers\MyController::class, 'MyController');
내 서비스 제공 업체 :
class PackageRouterServiceProvider extends ServiceProvider
{
/**
* Bootstrap the application services.
*
* @return void
*/
public function boot()
{
//
}
/**
* Register the application services.
*
* @return void
*/
public function register()
{
include(__DIR__ . '/../Http/routes.php');
$this->app->alias(MyController::class, 'MyController'); // <- I tried this
}
}
패키지 경로 파일이 아닌 응용 프로그램 routes.php 파일에서 패키지 컨트롤러를 가져 오려고합니까? 이것은 나에게별로 의미가 없다. 패키지 컨트롤러 동작을위한 동적 URL을 만들려면 패키지 구성 파일과 같이 다른 방법을 찾아야한다고 생각합니다. –
@GerardReches 아니요 아니요, 내 패키지 경로 파일입니다. – ventaquil
좋아, 문제는 경로가 전체 네임 스페이스없이 컨트롤러를 찾을 수 없다는 것입니다. 패키지 RouteServiceProvider를 보여줄 수 있습니까? –