0

バックボーンとマリオネットを使用しています。

私は定義された User モデルを持っています:

Users.User = Backbone.Model.extend({
    defaults: {
        short_name: '',
        full_name: ''
    }
});

バックボーン コードで、現在ログインしているユーザー データに簡単にアクセスしたいと考えています。

するかどうかわかりません:

  1. ユーザーモデルから継承する別のモデルを持っています(おそらくUsers.AuthUser??)

また

  1. User モデルのインスタンスを返しますが、ログインしたユーザーデータを含む代わりに、Users.User モデル内に別の関数を追加します。

また、現在ログインしているユーザー データを取得する方法もわかりません。

http://example.com/meJSONなどのエンドポイント URL を介してデータを公開しますか?

または、何らかの方法でバックボーンがセッション データにアクセスできますか?

4

2 に答える 2

1

subclass親に関係のないプロパティ/メソッドが にある場合は、サブクラス化する必要があるというのが一般的な経験則です。私の意見では、これはその例です。

バックボーン (単に MVC JS 実装) がセッション データにアクセスできません。したがって、これは REST リクエストを介して利用できる必要があります。

于 2013-03-04T08:45:26.490 に答える
0

モデル間でデータは共有されません。認証されたユーザーのユーザー モデル内で特定の機能が必要でない限り、認証の使用に追加のデータを入力するだけで十分です。

これを行う方法はfetch()メソッドで、現在ログインしているユーザーの JSON を返すエンドポイントとモデルが通信していることを確認します。

認証されたユーザーと他のユーザーの違いを定義するurlRootには、2 つの別個のモデルが必要です。

PS、実際にはREST APIの代わりにsocket.ioを同期プロトコルとして使用しているため、現在のユーザーと連絡先に対して異なるイベント名を使用して同期しています。

于 2013-03-04T20:01:36.537 に答える