2014-12-02 3 views
0

그래서 Ruby on Rails 애플리케이션에서 각도 라우팅을 시도하고 있습니다.각도 라우팅이 올바르게 작동하지 않습니다.

문제는 루트에 착륙했을 때 '/'라고 가정 해 봅시다. 착륙했을 때 원하는 디렉토리에 템플릿을로드해야한다는 각도 라우팅이 있습니다. 그러면 레일스 서버가 폴더에서 내 파일을로드하지 않는 것처럼 보이지만 대신 내가 URL에 각 경로를 말했다 경로를 넣어하려고 그러니까 기본적으로

Started GET "/templates/index.html.erb" for 127.0.0.1 at 2014-12-02 18:03:39 +0200 
ActionController::RoutingError (No route matches [GET] "/templates/index.html.erb"): 

한 다음 요청을이 오류가 발생 ?

templateUrl:/users으로 바꾸면 내 응용 프로그램에서 html로 응답하는 실제 경로가되므로 효과적으로 경로가 지정됩니다. 그러나 그것은 내가 원하는 행동이 아닙니다.

Angular가 호출 된 경로를 입력 할 때 지정된 nag-view의 html 템플릿을 지정된 템플릿으로 바꾸기를 원합니다. app/assets/javascripts/angular/templates 내 라우팅에 정의되어있다 : 나는 현재 그래서 위치한 base href

'/' 내 템플릿을 설정 한 내 application.html.erb에서, 또한

App = angular.module("App", ['ngRoute', 'growlNotifications']) 

    App.config ($httpProvider) -> 
     authToken = $("meta[name=\"csrf-token\"]").attr("content") 
     $httpProvider.defaults.headers.common["X-CSRF-TOKEN"] = authToken 

    App.config ($routeProvider, $locationProvider) -> 
     $locationProvider.html5Mode true 
     $routeProvider 
      .when '/', 
       templateUrl: 'templates/index.html.erb', 
       controller: 'VisitorsCtrl' 
      .when '/users', 
       templateUrl: '../../views/users/index.html.erb', 
       controller: 'UsersCtrl' 
      .otherwise redirectTo: "/" 

: 여기

는 각 라우팅 내 코드입니다 angular 폴더

여기에 무슨 문제가있을 수 있습니까? "/ 자산 :

당신은 ERB 템플릿을 얻으려면

답변

1
  1. , 당신은 아마 당신 같은 것을 SI 올바른 경로를 사용할 필요가 당신이 원하는에 대한
  2. 템플릿 잘못 디렉토리에있는 경우에만 HTML로 ERB을 변경하려면/public/templates "
  3. 템플릿을 렌더링 할 때 ERB를 계속 사용하려면 routing (config/routes.rb)을 사용하는 해결책이 필요합니다.)이 템플리트는 url의 페이지 컨트롤러 바인드에 /templates/sth.html에 있지만, 꽤 추한 해결책이라고 생각합니다.
  4. 나는 당신에게 가장 좋은 해결책이이 great tutorial을 따를 것이라고 생각합니다. 그들은 공공/템플릿 디렉토리에 템플릿을 저장합니다.
+0

해결책을 제공하고 다시보고 해주세요! – Kaspar

+0

좋아요, 파일을 .html로 변경하고 나에게 준 경로를 사용하여 작업하고 있습니다. 하지만 왜 그것이 assets/angular/templates/public.html입니까? 각도 폴더가 자산 폴더가 아닌 javascript 폴더에도있을 때? – Kaspar

+0

이것은 Rails에서 자산이 스프롤킷을 통해 컴파일되고 게시되는 방법입니다. 자산 디렉토리에 템플릿이있는 경우 프로덕션 환경에 문제가있는 것 같습니다. –

관련 문제