2012-01-16 5 views
0

Я действительно реализовал некоторый код с данными ember-данных, разговаривая с java-приложением sinatra. Метод findAll работает как ожидалось, и загрузка записей. Также я реализовал метод updateRecord в файле DS.Store.create, но не знаю, как обновлять и фиксировать. Пожалуйста, смотрите здесь код (для краткости я не включают в себя функции Jquery): http://pastie.org/3197008Данные Ember - Как обновить запись

Я попытался следующие:

a = Todos.records.objectAt(0).set("text", "should be so") 
a.store.commit() 

Но я получаю следующее сообщение об ошибке: TypeError: Object (subclass of DS.State) has no method 'enter'

Как обновить записи? Или я забыл что-то реализовать для обновления?

Заранее благодарен!

ответ

4

У меня была та же проблема. Я думаю, что это ошибка в данных ember-данных. Проблема состоит в том, что код не был правильно инициализирован некоторыми подстанциями, и эти подстанции были не экземплярами состояний, а скорее классами состояний.

Я исправил проблему, указав функцию, которая генерирует новый экземпляр состояния (с правильно созданными подстанциями) каждый раз при его вызове. Вы можете найти мои изменения here.

Я также просил, чтобы люди, работающие с ember-данными, вытащили мое исправление, поэтому, надеюсь, этот вопрос скоро исчезнет. Вы можете просмотреть pull request для обсуждения.

+0

Спасибо! Эта ошибка сходит с ума :-) – Mimay

+1

Я могу подтвердить вашу работу с исправлением. +1 –

+0

Спасибо, Рафаэль. –

2

У меня была такая же проблема сегодня утром. Используйте версию emberjs git

+0

Да, вам нужно вытащить и построить данные ember, если вы хотите получить последние ... они не опубликовали полную загрузку/сборку через некоторое время –

Смежные вопросы