2016-04-19 8 views
1

ログインしていないユーザのログインページ(application/index)をログインするユーザのプロファイルページ(users/show)をルートパスexample.comに表示することはできますか?Ember.js - ルートURLは、認証されたユーザー用とゲスト用の2つのルートにリンクできますか?

Guest user -> example.com -> application/index 

Authenticated user -> example.com -> users/show 

私は、これはURLで反射されたアプリの状態のEmber社の理念に反することを知って、まだ、誰もがこのような状況は可能であるか/どのように知っているのですか?

乾杯!

答えて

1

はい、できます。まず、「アプリケーション」ルートの「beforeModel」にログインしているかどうかを確認する必要があります。ユーザーがログインしている場合は、「transitionTo」メソッドを使用して「profile」ページに遷移し、それ以外の場合は「login」ページに遷移します。

beforeModel: function(transition) { 
    var user; 
    //put here method to check if user is logged in or not 
    if (!user) { 
     //if no user then transist to login 
     this.transitionTo('login'); 
    } else { 
     //other wise to profile page 
     this.transitionTo('profilePage'); 
    } 
} 
+0

ありがとうJyoti。多分私は少しはっきりしていたはずです。ルートページがこれらの2つのルートにリンクすることが可能かどうかを尋ねています** **リダイレクトなし。例えば ​​'users/show'ルートのURLは** example.comです。このようにレールルートを設定するのは本当に簡単なので、Emberが同じように動作するかどうかを調べたいと思っていました。それまではリダイレクトの戦略を使用します – Subtletree

関連する問題