0

私は、Rails API を使用して、標準の Rails アプリを Ember アプリに移行しようとしています。これは漸進的なプロセスであるため、短期的には、ユーザーはサイトの新しい部分 (Ember を使用) と古いレガシー ビューの間を行き来することになります。

ある時点で、ember アプリで、ユーザーは新しい「計画」モデルを作成します

計画/new.hbs

<button {{action createNewPlan}}>Create Plan</button>

計画が正常に作成された後、古い Rails アプリの計画/表示ビューに移行したいと考えています。

コントローラーではなく、plans_new_router で createNewPlan アクションを定義しました。これは、ルーターがアプリケーションの状態の追跡を担当する必要があることを理解しているためです。

plan_new_router.js

App.PlansNewRoute = Ember.Route.extend({
  events: {
    createNewPlan: function() {
      var newPlan = this.controllerFor('plans_new').get('content');
      newPlan.get('transaction').commit();

      // how can I transition to plans/show in the old rails app ????
    }    
  }
}

モデルを保存した後、古いRailsアプリのplans_showビューにtransitionToしたいと思います。これどうやってするの?transitionTo には ember ルートが必要です。しかし、私がやりたいことは、新しいプラン ID を使用して、browser を適切な Rails URL にリセットすることです。transitionTo は私が使いたいものではないと思います。

どうすればいいのですか?

4

1 に答える 1

1

window.location =多分?あなたはおそらく応答まで待ちたいですか?もしそうなら、私は ember-data が本当にすぐに promise ベースになると思います。

まだの場合はaddObserver、のidプロパティにnewPlan変更できます。変更された場合は、window.location

于 2013-05-03T16:58:14.383 に答える