Модель загрузки данных Ember из DS.PromiseArray

Я хочу загрузить модель Ember с помощью записи запроса Ember.

мой код:

model: function(params) {
    return this.store.find("user", {username: params.username}).then(function(result){
      return result.get('firstObject');
    });
  },

Я использую адаптер ActiveModel.

В консоли я вижу "сгенерированный -> маршрут: логин Object {fullName:" route: login "}"

при отладке я вижу, что result.get ('firstObject') загружается правильно, но setupController не вызывается.

Обновлять:

Модель загружается нормально, я столкнулся с этой проблемой из-за ошибки в контроллере. Спасибо


person Anil Maurya    schedule 06.01.2015    source источник
comment
Можете ли вы поднять это на jsbin?   -  person Kalman    schedule 06.01.2015


Ответы (1)


Похоже, вы используете два оператора return в хуке модели. Если вы собираетесь возвращать данные из функции then, опустите свой первый оператор return.

model: function(params) {
    this.store.find("user", {username: params.username}).then(function(result){
        return result.get('firstObject');
    });
},
person awgreenarrow08    schedule 06.01.2015
comment
Спасибо за ответ, но эта часть кода работает нормально, у меня эта проблема возникла по другой причине. - person Anil Maurya; 06.01.2015
comment
@ awgreenarrow08 - Я считаю, что в этом случае вы должны получить 2 возврата. Отсутствие явного возврата из model не будет работать emberjs.jsbin.com/dujuro/1/edit Это не Руби;) - person Kalman; 06.01.2015
comment
Нет ... Вы должны вернуть что-то в хуке модели, иначе он просто предположит, что модель нулевая. Второй результат - это закрытие выполнения обещания, а не закрытие крючка модели. - person mpowered; 06.01.2015