Codeigniter HMVC Ajax

Мне нужна помощь в моем вопросе. У меня есть список пользователей, и я хочу удалить пользователя по нажатию кнопки удаления, используя ajax в CI HMVC. Вот код моего списка

$(function() {
    $(".tip-del").click(function() {
        var recId = $(this).data("id");
        var parent = $(this).parent();
        var BASE_URL = "<?php echo base_url()?>";
        var r = confirm("Are you sure you want to delete this user?");
        if(r == true){
            $.ajax({
                url : BASE_URL + 'auth/delete_user',
                type: 'post',
                data: {'rec_id' : recId },
                success: function (response){
                    try{
                        if(response == 'true'){
                           parent.slideUp('slow',function(){$(this).remove();}); 
                        }
                    }catch(e) {     
                        alert('Exception while request..');
                    }                    
                },
                error: function (xhr, text, message) {
                    console.log(message);
                }
            });
            return false;
        }
    });
});

А вот мой контроллер (тот же модуль, где расположен вид) код

function delete_user() {
    if ($this->input->post('rec_id')) {
        $id = $this->input->post('id');
    }
    if (!$this->ion_auth->in_group('admin')) {
        $this->session->set_flashdata('message', $this->lang->line("access_denied"));
        $data['message'] = (validation_errors() ? validation_errors() : $this->session->flashdata('message'));
        redirect('module=auth&view=users', 'refresh');
    }
    $this->ion_auth_model->deleteUser($id);
}

И вот мой код модели

public function deleteUser($id) {
    if ($this->db->delete('users', array('id' => $id)) && $this->db->delete('users_groups', array('user_id' => $id))) {
        return true;
    }
    return FALSE;
}

Может кто-нибудь, пожалуйста, помогите мне в этом. Я не могу понять, что я делаю не так. В предварительном просмотре ответа ajax я получил ошибку как

An Error Was Encountered. The action you have requested is not allowed.

Заранее спасибо.

1 ответ

Я думаю, что ваш запрос на удаление неправильный. Это должно быть как ниже (в коде модели):

if ($this->db->where(array('id' => $id))->delete('users') && $this->db->where(array('user_id' => $id))->delete('users_groups')) {
        return true;
}

Пожалуйста, смотрите эту ссылку:

https://ellislab.com/forums/viewthread/163976/

Сначала вы ищете в Google, и если у вас нет ответа, вы публикуете здесь.

Другие вопросы по тегам