AngularJS выдает сообщение об ошибке пользователю, основываясь именно на том, что происходит
Мой API построен на Django Rest Framework.
В моей базе данных только четыре поля.userid, name, email, phone
Я пишу ниже этого фрагмента, и он отлично справляется с ошибками и успехами:
$scope.formModel = {}; // It will post data and handle both success and error,
$scope.onSubmit = function () {
$http.post('http://127.0.0.1:8000/api/v1/contact/', $scope.formModel)
.then(function(response){
$scope.successPost = 'You have successfully submitted your Contact';
$timeout(function(){
$scope.successPost = '';
},4000);
$scope.contacts.push(response.data);
}, function(response){
$scope.errorPost = 'Ooops! It seems Your Submitted User ID or Phone Number or Email are already exist, please try again with different data';
$timeout(function(){
$scope.errorPost = '';
},10000);
});
$scope.formModel = {};
$scope.addContactForm.$setPristine();
};
Мой бэкэнд не позволит публиковать дубликаты, например, еслиномер телефона существует в базе данных, во второй раз, пользователь не может опубликовать это, если они пытаются попытаться опубликовать номер телефона, который уже существует, я хочу показать им сообщение, что "Ваш представленный номер телефона уже существует" Аналогичным образом, если он попытается отправить электронное письмо, которое уже существует, я хочу показать ему сообщение типа "Ваше отправленное электронное письмо уже существует"
В настоящее время мой фрагмент работает, как если бы он могопубликовать сообщение успешно, он получает сообщение об успехе, и если возникает ошибка, он получает сообщение об ошибке, но я хочу показать, что именно произошло и почему не принято.