0

emberjs 0.9.8.1 でこのエラーが発生しています

Uncaught You cannot load data into the store when its associated model is in its current state

このようなデータを取得しようとしているだけです

App.myController.get('content').get('someProperty');

そしてそのエラーが発生します。データは既にコントローラーのコンテンツにロードされており、それを取得しようとしています。私は ember データを使用していますが、これは私のモデルに問題があります

App.MemberInfo = DS.Model.extend({
        primaryKey: 'level',
        levelCopy: DS.attr('string'),
        level: DS.attr('string'),
        contactInfo: DS.hasOne('App.ContactInfoModel', { embedded: true })
    });

App.store.find メソッド (ember データ) を使用してコントローラーのコンテンツをリロードしています。エラーは、同じモデルに対して 2 回目の検索を実行した後に発生します。contactInfo 属性が存在しなかった場合。問題ありませんでした。contactInfo が追加されたときに発生します。

4

1 に答える 1

1

どのバージョンの ember-data を使用していますか? 長い間、hasOne関係はもう存在しません...

belongsTo所有側 (id 参照を持つモデル) で関係を使用する必要があります。


ところで、より慣用的なコードのちょっとしたヒント:

App.myController.get('content').get('someProperty');

次のように記述します。

App.myController.getPath('content.someProperty');

またはエンバーエッジ付き

App.myController.get('content.someProperty');

さらに、myControllerObjectControllerインスタンスの場合、プロキシとして次のように書くこともできます。

App.myController.get('someProperty');
于 2012-07-11T08:55:16.687 に答える