Primeiro de tudo, seu servidor deve retornar erros com relevantes Códigos de status de erro HTTP (Consulte códigos 4xx e 5xx). Dessa forma, você apenas lida com erros no retorno de chamada de erro:
function onError (response){
switch (response.status) {
case 400:
case 404:
//etc...
response.data.errors.forEach(function(error){
$scope.alerts.push({type:'danger', msg: error.msg});
});
break;
case 500:
$scope.alerts.push({type:'danger', msg: "There was a problem saving your data: " + response.data});
break;
}
}
Dito isto, se $ scope.user for um $ instância de recurso, então você não precisa obtê -lo novamente do servidor, o método $ salv () não alterará o objeto.
Para copiar valores do objeto 'Usuário' recuperado do servidor para o $ SCOPE.USER BET angular.extend ()
angular.extend($scope.user, data) //this updates $scope.user with data attributes.
Vale a pena notar que angular.extend
não executa uma cópia profunda, se necessário, use jQuery.Extend:
jQuery.extend(true, $scope.user, data)