欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

django 数据库(Mysql)的,增,删,改,查

程序员文章站 2022-05-03 14:49:27
...
  • 安装Django pip install django==2.0.4

  • 创建Django项目

     	步骤
     	  创建Django项目
     	      django-admin startproject 工程名称
     	  创建子应用
     	      python manage.py startapp 子应用名称
     	          book = models.ForeignKey(BookInfo)
    
  • 模型迁移 (建表迁移)

      - 由两步完成 :
                	生成迁移文件:根据模型类生成创建表的语句
                	python manage.py makemigrations
                	执行迁移:根据第一步生成的语句在数据库中创建表
                	pythonmanage.py migrate
    
  • 在子项目中的models创建表

      from django.db import modls
                  class Campus(models.Model):
                      '''校区表'''
                      name = models.CharField(max_length=50)   # 设置校区表字段
    
     
         class Meta:
             verbose_name_plural = '校区表'  # 在超级管理页面显示中文
     
         def __str__(self):
             return '%s-%s' %(self.id,self.name)
     
     
     class School(models.Model):
         '''学校表'''
         name = models.CharField(max_length=50)  # 设置学校表字段
         Campus = models.ForeignKey(Campus, on_delete=models.CASCADE)  # 设置与校区表的外键
     
         class Meta:
             verbose_name_plural = '学校表'   # 在超级管理页面显示中文
     
         def __str__(self):
             return self.name
     
     
     class Speciality(models.Model):
         '''专业表'''
         name = models.CharField(max_length=50)  # 设置专业表字段
         School = models.ForeignKey(School, on_delete=models.CASCADE)  # 设置与校园表的外键
     
         class Meta:
             verbose_name_plural = '专业表'  # 在超级管理页面显示中文
     
         def __str__(self):
             return self.name
     
     
     class Classes(models.Model):
         '''班级表'''
         CLASSES_NUMBER = (   # 设置选项
             (0, 'A班'),
             (1, 'B班')
         )
     
         name = models.CharField(max_length=50)  # 设置班级表字段
         number = models.SmallIntegerField(choices=CLASSES_NUMBER, default=0)  # 设置不而类型
         Speciality = models.ForeignKey(Speciality, on_delete=models.CASCADE)  # 设置与专业表的外键
     
         class Meta:
             verbose_name_plural = '班级表'  # 在超级管理页面显示中文
     
         def __str__(self):
             return self.name
    
  • 修改配置
    django 数据库(Mysql)的,增,删,改,查


  • django 数据库(Mysql)的,增,删,改,查


  • django 数据库(Mysql)的,增,删,改,查

  •  # 修改方法一
    campus = models.Campus.objects.filter(name='吉利大学').first()
    print(campus)
    campus.name = '光明学院'
    campus.save()
    
    # 修改方法二
    campus = models.Campus.objects.filter(id=4).update(name='于家庐大学')
    print(campus)
    
  • # 查询方法一 (get)
    campus = models.Campus.objects.get(name='天津大学')
    print(campus)
    
    # 查询方法二 (filter)
    campus = models.Campus.objects.filter(name='光明学院').first()
    print(campus)