Prezados, boa tarde,
quando da exclusão da foto foi feito:
$scope.remover = function(foto) {
    $http.delete('v1/fotos/' + foto._id)
    .success(function() {
        var indiceFoto = $scope.fotos.indexOf(foto);
        $scope.fotos.splice(indiceFoto, 1);
        $scope.mensagem = 'Foto ' + foto.titulo + ' removida com sucesso!!!';
    })
    .error(function(erro) {
        $scope.mensagem = 'deu pau na exclusão'
        console.log(erro);
    });
};A respeito do foto._id, este campo foi selecionado porque o back-end tem este campo para excluir? Ou seria uma propriedade do Angular? Pergunto porque não se trata de um atributo id do HTML. Ao invés de utilizar foto._id, poderia utilizar $scope.fotos.indexOf(foto)???
Outra questão sobre a exclusão: o elemento
não é exibido. Tive que alterar para para aparecer, mantive os mesmos atributos.
<span class="alert alert-info" ng-show="mensagem.length">{{mensagem}}</span>Qual o mistério?
 
            