2014-02-17 3 views
1

아시다시피 Laravel4는 모든 URL의 후행 슬래시를 생략했습니다. 나는 Laravel4 X AngularJS와 SPA (단일 페이지 응용 프로그램)을했습니다, 단순히 내 현재의 URL은 다음과 같습니다 : 내가 달성하고 싶은 무엇Laravel X AngularJS - 접두사/후행 슬래시

http://localhost/en#/nglink 

링크를 만드는 것입니다 다음과 같습니다

http://localhost/en/#/nglink 

볼 수 있듯이 AngularJS 링크 (#/nglink) 앞에 접두사 슬래시 또는 Laravel의 링크 (http : // localhost/en) 뒤에 슬래시가 필요합니다. AngularJS를 사용하여 이것을 달성 할 수 있습니까? Laravel의 핵심 파일을 편집하지 않고 그것을 달성하는 방법이 아니라면?

답변

0

AngularJS 또는 Laravel 또는 http 서버 측에도 구현할 수 있지만 핵심 파일을 건드리지 않고도 필요한 클래스 (주로 URLGenerator)를 재정의 할 수 있으므로 Larvel 자체를 통해 더 쉽게 수행 할 수 있습니다 (&). 코드를 유지하는 동안 (서버는 알지 못함) 아파치/nginx 또는 후행 슬래시 (htaccess로 작업하지 않는 것을 선호하는 이유)가있는 다른 서버에서 작동 할 수 있습니다.

업데이트 # 1

Laravel 5/AppServiceProvider :: 레지스터()

$this->app->bindShared('url', function ($app) { 
     $routes = $app['router']->getRoutes(); 

     $request = $app->rebinding('request', function ($app, $request) { 
      $app['url']->setRequest($request); 
     }); 

     // This is your custom overridden "UrlGenerator" class 
     $urlGenerator = new UrlGenerator($routes, $request); 

     return $urlGenerator; 
    }); 
+0

당신은 URLGenerator를 오버라이드 (override)의 예를 제공 할 수 있을까요? 나는 이것이 어떤 것에도 영향을 미치지 않는다는 것을 압니다. 그러나 어떤 이유로 그것은 저를 귀찮게합니다. –

+0

코드 예제 @RyanH에 대한 업데이트 # 1 확인 – Omranic