2014-11-01 3 views
0

Я работаю с ember, чтобы сделать учебник.данные ember не сохраняют ID из возвращенных данных с сервера

и пытается подключить его с адаптером для отдыха, чтобы перейти на бэкэнд.

полный рабочий процесс для работы, но когда я пытаюсь сохранить модель, она отправляет сообщение в конечную точку api, , которая возвращает идентификатор недавно сохраненной модели, но не отражает ее на стороне клиента.

Если я полностью перезагружу все данные, он работает, но для одной модели возвращенный идентификатор не обновляется.

Как моя модель не имеет «id», она использует primaryKey: «Id», которая работает при перезагрузке страницы, но , когда ответ сервера после сохранения, возвращенные идентификационные данные не обновляются внутри клиентской стороны.

как мне больше отладить ошибку?

ok У меня есть частичное решение.

мой сервер возвращал только данные, как

{ 
    "Id": 4767482418036736, 
    "title": "asdfas" 
    } 

вместо

todo:{ 
    "Id": 4767482418036736, 
    "title": "asdfas" 
    } 

, но так как я не могу изменить свой сервер много, я учу уголек искать TODO без скобок ??

ответ

0

Ваш ответ JSON не выглядит правильно отформатированным, см. Примеры https://github.com/emberjs/data/blob/master/packages/ember-data/tests/integration/adapter/rest_adapter_test.js).

Учитывая, вы не можете изменить сервер, посмотрите в сериализаторы (http://emberjs.com/api/data/classes/DS.RESTSerializer.html)

+0

получил мой ответ, переопределив правильный сериализатор, но спасибо за ссылку test.js, это очень помогло. – iamgopal

0

я получил ответ,

мне нужно переопределить функцию сериализатора ExtractSingle таким образом.

extractSingle:(store, type, payload, id)-> 
    payload = { todo : payload } 
    return this._super(store, type, payload, id); 
Смежные вопросы