Laravel.io
Extracted Generic Patch Method (in AppFactory)
-------------------------------------
function patchIt(end, id, data){
    return $http.patch(API_URL + end + id, data);
}
====================================

Calling Function in Controller
------------------------------------
$scope.createFarmer = function(obj) {
  if (angular.isDefined($scope.farmerID) && obj.id === $scope.farmerID) {
    //TODO: patch farmer_id in loan in DB
    AppFactory.patchIt('/loans/' + $scope.loan.id, {farmer_id: obj.id});
  } else {
    var thisYear = new Date().getFullYear();
    var exp = AppFactory.diffInDates(thisYear, parseInt(obj.first_year_farmer));
    obj.farm_exp = exp;
    return FarmersFactory.createFarmer(obj)
      .then(function(res){
        AppFactory.patchIt('/loans/' + $scope.loan.id, {farmer_id: obj.id});
        $scope.loan.farmer_id = res.data.message;
        if ($scope.screens[$scope.currentScreen + 1] !== undefined) {
          $scope.screens[$scope.currentScreen + 1].status = 1;
          AppFactory.moveToNextNewLoanScreen($scope.screens[$scope.currentScreen + 1].screen, $stateParams);
        }
      });
  }
};

Please note that all pasted data is publicly available.