drf通用视图

创建django项目
创建项目  django-admin startproject 项目名

配置drf & 中间件 & mysql 数据库
 

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',
    'corsheaders',
    'users'
]
MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'corsheaders.middleware.CorsMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'daiyu',
        'USER': 'root',
        'PASSWORD': '8889',
        'HOST': 'localhost',
        'PORT': 3306,
    }
}

 配置静态文件

STATIC_URL = '/static/'
STATICFILES_DIRS= (os.path.join(BASE_DIR,'static'),)

创建django应用users

定义模型类

from django.db import models


# Create your models here.
# 基类
class BaseModel(models.Model):
    created_time = models.DateTimeField("创建时间", auto_now_add=True)
    updated_time = models.DateTimeField("更新时间", auto_now=True)
    is_delete = models.BooleanField(default=False)

# 部门模型类
class Department(BaseModel):
    name = models.CharField("部门",max_length=50)

    class Meta:
        db_table = 'department'

    def __str__(self):
        return self.name

# 职责模型类
class Duty(BaseModel):
    name = models.CharField("工作职责",max_length=50)

    def __str__(self):
        return self.name

    class Meta:
        db_table = 'duty'


# 员工模型类
class Staff(models.Model):  # 不能也继承BaseModel,会冲突
    SEX_CHOICE = (
        (1, '男'),
        (0, '女')
    )
    name = models.CharField("姓名", max_length=30)
    sex = models.SmallIntegerField("性别", default=1, choices=SEX_CHOICE)  # choices选项
    phone = models.CharField("手机号", max_length=11)
    email = models.CharField("邮箱", max_length=50)
    Department = models.ForeignKey(Department, on_delete=models.CASCADE)
    Duty = models.ForeignKey(Duty, on_delete=models.CASCADE)

    def __str__(self):
        return self.name

    class Meta:
        db_table = 'staff'

迁移模型类

python manage.py makemigrations

python manage.py migrate

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值