代码拉取完成,页面将自动刷新
创建应用:
python manage.py startapp 应用名
将创建的应用放到apps目录中,注意取消两个勾选!
1.创建应用后,在 settings.py 注册应用(INSTALLED_APPS中,应用名.apps.应用名首字母大写Config)
2.创建应用后,在 settings.py 中修改数据库连接信息(DATABASES)(需要提前建好库)
3.创建视图(即接口):在应用的 views.py 中,完成对数据库的CRUD操作,并定义响应数据函数(request、HttpResponse、JsonResponse)
4.添加路由:在 urls.py 中定义全局路由(列表中的一个元素代表一个路由)
5.添加数据库模型类(在应用目录下的 models.py 中添加数据库模型类,并定义表字段),建立与数据库的关联
6.添加模型类对应的序列化器类,完成字段校验、序列化和反序列化操作
7.在每个应用目录下都有 admin.py,在其中做 admin站点类的定制,以及 指定admin站点可管理的数据库模型类(实现UI操作数据库表)
在settings.py中,修改语言(LANGUAGE_CODE)和时区(TIME_ZONE)
在settings.py中,修改数据库连接信息(DATABASES)
启动后端服务:
python manage.py runserver
python manage.py runserver ip:端口 # 指定ip和端口,启动后端服务
建表:
python manage.py makemigrations 应用名称 # 不加应用名称,默认对全部应用中的模型类做建表
python manage.py migrate 应用名称 # 同上
创建超级管理员:
python manage.py createsuperuser
项目需要的模块输出到requirements.txt中,方便项目部署时一次性下载:
pip freeze > requirements.txt
在项目根目录创建static文件夹后,执行静态文件收集命令(前端代码放在这里):
python manage.py collectstatic
RESTful常用的设计规则:
1.URL命名:
尽量使用名词复数形式,与数据库的表名相对应
***/projects/6/ # 6是要操作数据的id
2.过滤条件:
若记录数量过多,后端不可能将全部数据返回给前端
?page=2&size=10 # 指定返回第几页及每页的数据条数
?limit=10 # 指定返回记录的数量
?offset=10 # 指定返回记录的开始位置
?sort=name # 指定返回结果按照哪个属性排序,以及排序顺序
3.域名:尽量使用专用域名
http://api.keyou.site
4.版本:
在URL中呈现版本号 # http://api.keyou.site/app/1.1/
例子:
GET /projects/ # 获取全部项目信息
GET /projects/6/ # 获取id==6的项目信息
POST /projects/ # 创建一个新项目
PUT /projects/6/ # 修改id==6的项目信息(全更新)
PATCH /projects/6/ # 修改id==6的项目信息(部分更新)
DELETE /projects/6/ # 删除id==6的项目
GET /projects/6/interfaces/ # 获取id==6的项目中全部的接口信息
GET /projects/6/interfaces/2/ # 获取id==6的项目中id==2的接口信息
5.状态码
200 OK [GET] # 服务器成功返回用户请求的数据
201 CREATED [POST/PUT/PATCH] # 用户新建或修改数据成功
204 NO CONTENT [DELETE] # 用户删除数据成功
400 INVALID REQUEST [POST/PUT/PATCH] # 用户请求有误(请求参数有误)
401 UNAUTHORIZED # 表示用户没有权限(令牌、用户名、密码错误)
403 FORBIDDEN # 表示用户得到授权,但是被禁止访问
404 NOT FOUND # 用户请求的路径不存在
500 INTERNAL SERVER ERROR # 服务器发生错误
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。