针对于学生信息管理系统,肯定是需要班级的,在这里我们将使用到restful风格, 这种方法里面有封装好了的增删改查操作,使用起来将会会比我们之前写到的方法简单太多太多, 而且这种方法可以完全实现前后分离。。
一、创建班级表
创建grade app
班级与学生的对应关系是一个学生可以对应多个班级,也就是一对多的关系,可以在学生表中引入一个g_id外键来关联上grade表格的id字段。
首先还是先创建grade表格,在今后我将不再把mysql创建数据表格的方法写出来了。
class Grade(models.Model):
g_name = models.CharField(max_length)
g_desc = models.CharField(max_length)
class Meta:
db_table = 'grade'
在Student类里添加外键:
g = models.ForeignKey(Grade)
二、restful api初使用
这里就将开始使用到restful,在进行操作前,请先在当前虚拟坏境下安装下面的库:
pip install djangorestframework
pip install django-filter # Filtering support
- 首先先配置好url
from rest_framework.routers import SimpleRouter
router = SimpleRouter() # 实例化一个router
router.register('grade', views.GradeEdit)
urlpatterns += router.urls # 添加进url
注意: register里面设置的url不能尾斜杠
url写好了,记得在setting配置了,增加’rest_framework’ app
之后写序列化的格式,在gradeapp里面建立一个serializers.py文件,代码如下: