У меня есть эта проблема с вставкой данных в MySQL, которые требуют метода POST с помощью почтальона.
эта функция data_post()
вставляет данные из базы данных, но когда я пытаюсь вставить данные необработанных данных с почтальоном
{"id":"2","name":"ropen","password":"pamela005"}
Я имею эту ошибку на почтальоне:
405 метод не допускается
Это мой контроллер
Users.php
public function data_post(){
$params = [
'id' => 1,
'name' => 'John Doe',
'password' => 'test'
];
$resp = $this->user_model->data($params);
$this->set_response($resp, REST_Controller::HTTP_CREATED);
}
модель
User_model.php
public function data($data){
$this->db->insert('user',$data);
}
Надеюсь, что это поможет вам :
Вы должны получить post
использование данных $this->post()
во-первых, должно быть так:
Заметка : если твой id
столбец автоинкрементный, нет необходимости добавлять идентификатор в $params
public function data_post()
{
$id = $this->post('id');
$name = $this->post('name');
$password = $this->post('password');
$params = array('id' => $id,'name' => $name,'password' => $password);
$resp = $this->user_model->data($params);
$this->set_response($resp, REST_Controller::HTTP_CREATED);
}
Для большего : https://github.com/chriskacerguis/codeigniter-restserver#handling-requests
Других решений пока нет …