2013-02-22 1 views
3

Ember.js를 기존 Rails 응용 프로그램과 통합하는 과정에 있습니다. 단일 컨트롤러 동작 dashboard#index에 Ember를 사용하여 시작하고 싶습니다. 거기서 나머지 사이트를 Ember 응용 프로그램에 통합 할 계획입니다. 아마도 컨트롤러 단위로 이루어질 것입니다.모든 Ember.js 경로에 '접두사'URL을 어떻게 지정합니까?

Ember에 대한 Rails 루트 경로 제어를 양도 할 준비가 아직되어 있지 않아서 Ember URL을 관리하는 데 문제가 있습니다.

예를 들어, I는 다음 루트는 엠버 O/W 레일에 의해 처리 될 싶습니다

/ 
/login 
/logout 

동안 :

/dashboard 

는 엠버 애플리케이션을 트리거한다. 그렇다면 /dashboard/#/favoritesdashboard/#/upcoming

과 같은 다양한 뎀 버 대시 보드 경로가있을 것입니다. 자산 파이프 라인을 통해 대체 레일스 레이아웃과 경로를 설정했는데, 엠버 라우터가 좋지 않은 경우 찾을 수 있습니다. 엠버 경로는 /dashboard/과 같이 prefix 뒤에 붙습니다.

이 방법을 설정하는 방법이 있습니까?

감사는 응용 프로그램 레이아웃을 무시 너무 layout false을 설정하여 dashboard 컨트롤러 내부

+1

발생하는 문제 ... HashLocation ('/ dashboard/#/routeName')을 사용하는 경우 정상적으로 작동합니다. –

+0

... HashLocation에 익숙하지 않다 ... 내가 필요한 것처럼 들린다. 나는 API 문서에서 그것을 본다. 가이드의 모든 언급/예 또는 다른 곳에서? Ember를 시작하기 만하면됩니다. 감사! – doublea

+1

기본 라우터 동작이므로 구성 할 필요가 없습니다. 그냥 플러그 앤 플레이해야합니다 - 라우터의 '위치'속성은 변경하지 마십시오. –

답변

0

.

그런 다음 자신의 레이아웃을 만들고 엠버 응용 프로그램을 포함하도록 dashboard/index.html.erb 파일을 만듭니다. 그것은 다음과 같이 보일 것이다 :에서 다음

<!DOCTYPE html> 
<html> 
<head> 
    <title>ember app</title> 
    <%= stylesheet_link_tag "application" %> 
    <%= csrf_meta_tags %> 
</head> 
<body> 
<%= javascript_include_tag "ember_app" %> 
</body> 
</html> 

당신의 assets/javascripts/이 보이는 파일 ember_app.js해야한다 : 내가 사용

//= require handlebars 
//= require ember 
//= require ember-data 
//= require_self 
//= require ./store 
//= require_tree ./models 
//= require_tree ./controllers 
//= require_tree ./views 
//= require_tree ./helpers 
//= require_tree ./components 
//= require_tree ./templates 
//= require_tree ./routes 
//= require ./router 
//= require helpers 

# for more details see: http://emberjs.com/guides/application/ 
window.DashboardApp = Ember.Application.create() 

좋은 자원이 ember-rails 보석입니다. 그것도 good documentation 있습니다.