php - php - Codeigniter Rest api 简单的 CRUD
问题描述
我在将数据插入 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
列是自动增量的,则无需在其中添加 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
推荐阅读
- java - Hibernate 返回 PersistenceBag 或 PersistenceSet 而不是 List 和 Set
- php - 获取 ERR_CONNECTION_REFUSED
- python - from ... import ... 语句的对齐方式
- javascript - React-native:未定义不是对象
- javascript - jest js:包含的 wiCG-inert 无法重新定义属性 inert
- swift - 为函数内的类成员赋值
- javascript - 如何仅显示 DataTables 上的前 N 行?之后如何下载所有数据?
- sql - SQL-删除非拉丁字符的记录
- winforms - 运行应用程序时 Windows 窗体按钮外观发生变化
- next.js - Nextjs 页面在刷新时进入 404