关于模型类的创建和DRF视图

1:Django REST framework是一个建立在Django基础之上的Web 应用开发框架,可以快速的开发REST API接口应用。

2:它提供了序列化器Serialzier & ModelSerializer 的定义,可以帮助我们简化序列化与反序列化的过程

3:

  1. 提供丰富的类视图、扩展类、视图集来简化视图的编写工作。

  2. 还提供了认证、权限、频率、过滤、分页、接口文档等功能。

  3. REST framework提供了一个API 的Web可视化界面, 方便查看、测试接口

补充:》》》》》》》

DRF:

  • 提供了定义序列化器的方法,可以快速将 模型类对象转为字典,便于序列化;

  • 提供了丰富的类视图、Mixin扩展类,简化视图的编写;

  • 丰富的定制层级:函数视图、类视图、视图集合到自动生成 API,满足各种需要;

  • 多种身份认证和权限认证方式的支持;[jwt]

  • 内置了限流系统;

  • 直观的 API web 界面;【方便我们调试开发api接口】

  • 可扩展性,插件丰富

以下是模型类的创建

from django.db import models

# Create your models here.
# 基类 创建时间 更新时间
class BaseModel(models.Model):
    # 日期时间类型 第一个创建时间,==true 系统自动给添加
    created_time = models.DateTimeField(verbose_name='创建时间',auto_now_add=True)
    updated_time = models.DateTimeField(verbose_name='更新时间',auto_now=True)



# 部门类 什么部门
class Department(BaseModel):
    name = models.CharField(verbose_name='部门',max_length=50)

    def __str__(self):
        return  self.name

    class Meta():
        db_table = 'department'
        verbose_name = '部门'


# 职务类-
class Duty(BaseModel):
    name = models.CharField(verbose_name='工作职务',max_length=50)

    class Meta():
        db_table = 'duty'
        verbose_name = '职务'

    def __str__(self):
        return self.name


# 员工类模型
class Staff(models.Model):
    SEX_CHOICE = (
        (1,'男'),
        (0,'女')
    )
    name = models.CharField(max_length=30,verbose_name='员工')
    # 小整型 这里的只有 1 0 ,,,1代表的是男生,0代表的是女
    sex = models.SmallIntegerField(verbose_name='性别',default=1,choices=SEX_CHOICE)
    phone = models.CharField(verbose_name='手机号',max_length=11)
    email = models.CharField(verbose_name='邮箱',max_length=50)
    department = models.ForeignKey(to=Department,on_delete=models.CASCADE,verbose_name='部门')
    duty = models.ForeignKey(to=Duty,on_delete=models.CASCADE,verbose_name='职务')
    # 外键关联 ---部门 职责

    class Meta:
        db_table = 'staff'
        verbose_name = '员工'

    def __str__(self):
        return self.name

4:我们一般是前后端分离写,所以在前后端连接中,需要用到json序列化,明天我们会进行后端序列化器的使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值