How to pass model name to angularJS restful api

I am new to AngularJS, but have used Backbone for a while now.

I want to create a reusable restful api that I can pass the model name to so that I can use it for different models.

At the moment I have:

angular.module('healthplanApiServices', ['ngResource'])
.factory('Api', function($resource) {
    return $resource(base_url + 'api/:object/:id', {
            id : '@id', object : 'actions'
    }, {
        query : {
            method : 'GET',
            isArray : true,
            callback : "JSON_CALLBACK"
        },
        save : {
            method :  '@id' ? 'PUT' : 'POST',
            isArray : true,
            callback : "JSON_CALLBACK"
        }
    });
});

... which sets the model as 'actions'. Then in my controller I use:

// get the collection
Api.query(function(r) {
$scope.actions = r;
});
$scope.toggleDone = function(a) {
    a.done = !a.done;
   //save an item
    Api.save(a);
}

That's all fine, but how do I pass the model name ('actions' in this case) for each model type: e.g., instead of putting it in the factory function like so:

id : '@id', object : 'actions'

... but rather something more like:

var ActionApi = Api.setObject('actions');
ActionApi.query(function(r) {
    $scope.actions = r;
});

UPDATE: I just figured out a way. It may not be the best, but it does work. Any other suggestions would be welcome! Just add the 'object' attribute to the model:

Api.query({object: 'actions'}, function(r) { 
  $scope.actions = r; 
  angular.forEach($scope.actions, function(a) { 
   a.object = 'actions' }); 
  }); 
Api.save(a);// also works 

You may want to try https://github.com/klederson/ModelCore ( ModelCore )

Its easy to model and structure and of course ... to use.

model.$find({ filter : "John" },{},true); //to find all with query parameters 
model.$get(1); //to retreive the user with id 1
model.$save()
model.$deelte();

And so on.. checkout the documentation