2016-06-27 2 views
0

Использование версий ember и ember-data 2.6, я пытаюсь заставить обработку ошибок работать, но сталкивается с проблемами. Я использую RESTSerializer и я посылаю следующую полезную нагрузку на мой сервер:Обработка ошибок с помощью RESTSerializer

{ 
    "brand": { 
     "name": null, 
     "description": null, 
    } 
}] 

Поскольку name не может быть пустым, это то, что я отправляю обратно, как мой ответ:

{ 
    "errors": [{ 
     "code": null, 
     "detail": "may not be null", 
     "status": null, 
     "title": null, 
     "source": { 
      "pointer": "brand/name", 
      "parameter": null 
     } 
    }] 
} 

в моем пути, я делаю следующее в экономии обещание на провал:

console.log(savedBrand.get('isValid')); // logs false 
console.log(savedBrand.get('errors').toArray()); // logs [ ] 

Там, кажется, не будет много подробной документации о том, как это все работает так, я использую this article в качестве отправной точки. Я не уверен, почему toArray() возвращает пустой массив вместо моей ошибки, которую я возвращаю в JSON.

ответ

1

хотя я не передавая данные в соответствии с JSON-апи, то pointer еще предстоит установить, как если бы я был:

{ 
    "errors": [{ 
     "code": null, 
     "detail": "may not be null", 
     "status": null, 
     "title": null, 
     "source": { 
      "pointer": "/data/attributes/name", 
      "parameter": null 
     } 
    }] 
} 
Смежные вопросы