AngularJS: PUT envia dados com URL, mas não como dados JSON

Aqui está o meuUserService

angular.module('userServices', ['ngResource']).factory('User', function($resource) {
  return $resource('/users/:userId',
      // todo: default user for now, change it
      {userId: 'bd675d42-aa9b-11e2-9d27-b88d1205c810'},
      {update: {method: 'PUT', params:{profile: '@profile'}, isArray: false}}
  );
});

No meu controlador, eu faço

$scope.save = function() {
    $scope.user.$update({profile: $scope.profile});
}

Mas quando vejo a guia "Rede" no Chrome, vejo

Request URL:http://localhost:5000/users/bd675d42-aa9b-11e2-9d27-b88d1205c810?profile=%5Bobject+Object%5D
Request Method:PUT
Status Code:200 OK

Como posso enviar isso comodata carga útil? de modo aURL é

http://localhost:5000/users/bd675d42-aa9b-11e2-9d27-b88d1205c810

e os dados vão como

{
  day_in_month: 5
}

Meu endpoint espera que os dados façam parte do pedido, para que ele possa analisá-lo comorequest.json

Obrigado

questionAnswers(2)

yourAnswerToTheQuestion