0

currentUser私はほとんどの場合私のために働くコントローラーを持っています。

サーバーからすべてのプロジェクトを取得するためにfindAll()、にを追加しています。Ember.Objectのプロジェクトのみを取得したいのですが、ログインしているユーザーのプロジェクトを取得するためにcurrentUser、どういうわけか組み込みようとcurrentUserControllerしています。id

  1. モデルからコントローラーにアクセスするのは間違った使い方ですか?
  2. そうでない場合、どのようにコントローラーにアクセスする必要がありますか?
App.Project = Ember.Object.reopenClass({
    findAll: function() {
    allPosts = [];
    $.ajax({
      url: '/projects.json',
      type: 'GET',
      data: {'user_id': App.currentUserController.id},
      success: function(data, textStatus, xhr){

      },
      error: function(xhr, textStatus, errorThrown) {

      }
    });
  }
});
4

2 に答える 2

0

はい、従来の知識では、モデルは決してコントローラーにアクセスしてはなりません。

currentUserController付随するルートとテンプレートはありますか?私が尋ねたいのは、そうでない場合、currentUserController単にグローバル変数として機能するのでしょうか?もしそうなら、あなたはただ保存currentUserController.idApp.currentUserIdて、必要に応じてそれを参照したいかもしれません。誰もがグローバル変数を好むわけではありませんが、これはグローバル変数を使用するのに妥当な場所です。

于 2013-03-06T22:02:59.690 に答える
0

ユーザーが別のアカウントにアクセスするために変数を変更できるため、これは実際には安全ではないことに注意してください。バックエンドには、現在の使用IDがセッションなどに基づいていることを認識できる状態がありませんか?私はそれを使用すると言うでしょう、そしてそれをクエリに追加することを気にしないでください。

于 2013-03-07T00:39:46.187 に答える