Prática recomendada do RestAngular

Então comecei a trabalhar em um projeto próprio, no qual estou desenvolvendo o front-end do meu site. Comecei com um back-end do PHP Laravel e configurei um serviço de API para o meu banco de dados.

Com um aplicativo híbrido em mente, comecei a usar o angularjs para meu aplicativo Web front-end. Para a comunicação com minha API usando REST, deparei-me com o retangular, o que é muito bom, porque era exatamente o que eu esperava.

Há apenas um problema que me incomoda, não há um "guia" real de como configurar um módulo / fábrica / provedor / serviço de manutenção para replicar sua API com um sistema que armazena os dados no armazenamento local ou configura um sistema simples onde você pode injetar o "Model" em um controlador e apenas façaModel->getAll() para buscar todos os modelos.

Porque eu sou novo no angularJS e, portanto, meu conhecimento sobre como abordar isso, é bastante limitado. Até agora eu fiz isso:

aplicação principal

var client = angular.module('clientApp', ['angulartics', 'angulartics.google.analytics', 'ngRoute', 'restangular']);

client.config(['$routeProvider', function($routeProvider){
    $routeProvider
        .when('/', {
            controller: 'flongsController',
            templateUrl: '/client_partials/Homepage.html'
        })
        .when('/flongs/:slug', {
            controller: 'flongsController',
            templateUrl: 'client_partials/Flong.html'
        })
        .otherwise({
            redirectTo: '/'
        });
}]);

flongsController

client.controller('flongsController', ['$scope', 'Restangular', '$routeParams', function ($scope, Restangular, $routeParams) {
    //controller variables
    var baseFlongs = Restangular.all('flongs');

    $scope.flongs = {};

    init();

    function init() {
        baseFlongs.getList().then(function(flongs){
            $scope.flongs = flongs;
        });
    }

}]);

Então, minha pergunta é simples:

Como posso melhorar esse código para que seja mais eficiente e mais sustentável?

Agradecemos antecipadamente, Nick van der Meij

questionAnswers(1)

yourAnswerToTheQuestion