У меня есть проект этого спортивного веб-сайта, написанный на Codeigniter / AngularJs, и я застрял в связи между представлением / контроллером / моделью.
Есть эта функция, которая обновляет точки зрения пользователя, тогда я должен использовать этот сервис dataSavingHttp для обновления базы данных, но я действительно запутался в ее функциональности
Контроллер View Angularjs
$scope.buy_salary_cap = function() {
$scope.remainSalary = parseInt($scope.contestDetails.salary_cap/10) + parseInt($scope.remainSalary);
$rootScope.profile_data.points_balance = parseInt($rootScope.profile_data.points_balance) + parseInt(1);
dataSavingHttp({
url: site_url+"lineup/update_user_points_balance",
data: {},
}).success(function (response) {
$scope.content = response.data.points_balance;
}).error(function (error) {
$scope.content = "Erro!";
});
$scope.isDisabled = true;
}
Контроллер Codeigniter
private function update_user_points_balance()
{
return $this->Lineup_model->update_user_points_balance();
}
Функция модели
public function update_user_points_balance()
{
$condition = array('user_id' => $this->session->userdata('user_id'));
$config['points_balance'] = $this->remain_balance;
$this->table_name = USER;
return $this->update($condition , $config);
}
Вот данные, сохраняющие код Http
vfantasy.factory('dataSavingHttp', function($http, $location) {
var wrapper = function(requestConfig) {
var options = angular.extend({
url: "",
method: "POST",
data : '',
dataType: "json",
},requestConfig);
var httpPromise = $http(options);
httpPromise.success(function(result, status, headers, config){
var l = window.location;
wrapper.lastApiCallConfig = config;
wrapper.lastApiCallUri = l.protocol + '//' + l.host + '' + config.url + '?' +
(function(params){
var pairs = [];
angular.forEach(params, function(val, key){
pairs.push(encodeURIComponent(key)+'='+encodeURIComponent(val));
});
return pairs.join('&')
})(config.params);
wrapper.lastApiCallResult = result;
})
return httpPromise;
};
return wrapper;
});
Может быть, есть более простое решение, но я действительно новичок в этих языках. Заранее спасибо.