В настоящее время я разработал таблицу содержимого с помощью AngularJS, таблица будет заполнена на основе Angular Service "Model", которая вызывает веб-службу и возвращает список и использует ng-repeat и создает таблицу и весь ее контент.
Все на данный момент отлично работает, у меня есть небольшая проблема. Часть таблицы, мы выводим кнопку действия, которая при нажатии вызывает веб-службу, которая обновляет текущую запись. Я пытаюсь обновить данные записи автоматически, но я должен обновить страницу, чтобы увидеть изменения.
Вот мой код
My app.js
angular.module('my_vehicles', ['vehicleServices', 'AccountsDirectives']);
service.js
'use strict';
angular.module('vehicleServices', ['ngResource']).
    factory('Car', function($resource) {
        return $resource('/vehicle/api/car.json/:id', {},
            {
                query:   {method:'GET',     isArray:false},
                delete:  {method:'DELETE',  isArray:false},
                update:  {method:'PUT',     isArray:false}
            }
        );
});
controller.js
'use strict';
function MyVehicleController($scope, Car) {
    var init = function() {
        $scope.page_has_next = true;
        $scope.cars = [];
        $scope.page = 1;
    };
    // initialize values
    init();
    Car.query({my_vehicle: true},
        // success
        function(data) {
            $scope.page_has_next = data.has_next;
            $scope.cars = data.objects;
        },
        // error
        function(data) {
        }
    );
    $scope.mark_sold = function(id, index) {
        Car.update({
            id      : id,
            status  : 'S'
        },
        function(data) {
        });
    }
    $scope.delete = function(id, index) {
        Car.delete(
            {id: id},
            // on success
            function() {
                // remove the element from cars array and it will be
                // automatically updated by ng-repeat
                $scope.cars.splice(index, 1);
                $scope.loadMore(1);
            }
        );
    }
    $scope.is_total_zero = function() {
        return !!($scope.cars.length)
        //return $scope.cars.length > 0 ? true : false
    }
    $scope.loadMore = function(limit) {
        if($scope.page_has_next) {
            $scope.$broadcast('loading_started');
            console.log(limit);
            Car.query({my_vehicle: true, page: $scope.page, limit: limit},
                // success
                function(data) {
                    $scope.page_has_next = data.has_next;
                    $scope.cars = $scope.cars.concat(angular.fromJson(data.objects));
                    $scope.page++;
                    $scope.$broadcast('loading_ended');
                },
                // error
                function() {
                    $scope.page_has_next = false;
                    $scope.$broadcast('loading_ended');
                }
            );
        }
    }
    $scope.$on('loading_started', function() {
        $scope.state = 'loading';
    });
    $scope.$on('loading_ended', function() {
        $scope.state = 'ready';
    });
}
и, наконец, мой html-код
                    <tr ng-repeat="car in cars">
                        <td><a href="{% ng car.get_absolute_url %}">{% ng car._get_model_display.make_display %} {% ng car._get_model_display.model_display %} {% ng car._get_model_display.trim_display %}</a></td>
                        <td>{% ng car.created_at_format %}</td>
                        <td>{% ng car.view_count %}</td>
                        <td ng-model="car.status_label">{% ng car.status_label %}</td>
                        <td>
                            <div class="btn-group">
                                <button ng-disabled="car.status == 'S' || car.status == 'P'" ng-model="edit" class="btn btn-mini edit-btn">{% trans 'Edit' %}</button>
                                <button ng-disabled="car.status == 'S'" ng-click="delete(car.id, $index)" class="btn btn-mini delete-btn">{% trans 'Delete' %}</button>
                                <button ng-disabled="car.status == 'S' || car.status == 'P'" ng-click="mark_sold(car.id, $index)" class="btn btn-mini edit-btn">{% trans 'Mark as sold' %}</button>
                            </div>
                            </td>
                        </tr>
PS {% ng XXX%} выводит {{XXX}}, я использую вышеупомянутый синтаксис, потому что django templating engine не позволяет мне использовать {{}}, поэтому я разработал templatetag, который выводит {{ }}..
Как упоминалось ранее, моя проблема заключается в том, что каждый раз, когда я вызываю "отмечать как проданный", он будет вызывать файл cars.update(), но он не будет обновлять отображаемую запись, должен обновляться, чтобы видеть изменения. Любая идея, как я могу это решить?