Force template refresh ember.js

Estoy usando el package de localización I18n para ocuparme de la parte del idioma de conmutación de mi aplicación. Utiliza una variable global para establecer el idioma deseado y un file json para almacenar las traducciones.

Como el cambio de un idioma es solo un cambio en una variable global, ember no lo detecta y no procesa las templates automáticamente. Lo forcé a través de una acción en el controller de la aplicación:

Extranet.ApplicationController = Ember.ObjectController.extend( { actions: { localToFr: function() { this.localisation('fr'); // this changes the global variable this.get('target.router').refresh(); // this is what refresh the template }, localToEn: function() { this.localisation('en'); this.get('target.router').refresh(); } }, localisation: function(lg) { I18n.locale = lg; } }) 

Tengo dos problemas con esa solución: 1) La plantilla de la aplicación no se reintegra a través de mi

 this.get('target.router').refresh(); 

2) Y mi otro problema, no funciona en templates que no solicitan acceso al server (por ejemplo: el nido de routes 'authSession')

 Extranet.Router.map(function() { this.resource( 'parkings', {path:'/'}, function () { this.route('parking', {path:'/parking/:parking_id'}); this.route('historique', {path:'/parking/:parking_id/historique'}); this.route('sessAct', {path:'/parking/:parking_id/sessAct'}); this.route('rapport', {path:'/parking/:parking_id/rapport'}); } ); this.resource( 'authSession', function () { this.route('login'); this.route('logout'); } ); } ); 

Estaba teniendo un problema similar. Acabo de ir con View.rerender() en la vista principal, que era un formulario en mi caso.