首页 python正文

Django 数据库表生成与修改操作详解

启明SEO python 2023-05-24 12:26:11 1354 0 django数据库

Django 数据库表生成与修改都需要用到 python manage.py makemigrations(创建或更改数据库)和 python manage.py migrate(将生成的py文件应用到数据库)命令。

对应的数据库表结构我们需要在models.py文件中创建与修改,如下代码:

class seo(models.Model):
    name=models.CharField(max_length=10,verbose_name='名称',default='',blank=True)
    host=models.CharField(max_length=50,verbose_name='主域名',default='/',blank=True)
    title=models.CharField(max_length=100,verbose_name='seo标题',blank=True)
    keywords=models.CharField(max_length=50,verbose_name='关键词',blank=True)
    logo=models.ImageField(upload_to='static/images',default='',blank=True)
    ico=models.ImageField(upload_to='static/images',default='',blank=True)
    description=models.CharField(max_length=150,verbose_name='描述',blank=True)
    jianjie=models.CharField(max_length=150,verbose_name='简介',default='',blank=True)
    beian=models.CharField(max_length=20,verbose_name='备案号',default='',blank=True)
    beijing=models.ImageField(upload_to='static/images',default='',blank=True)
   
    tongji=models.TextField(verbose_name='统计',default='',blank=True)
    def __str__(self):
        return self.title
    class Meta:
        verbose_name='SEO设置'
        verbose_name_plural=verbose_name

类名则是生成的数据库表的名称,变量则是表中的字段。设置好models.py文件后,我们依次使用命令python manage.py makemigrations,python manage.py migrate创建数据表及表字段,如下图:

Django 数据库表生成与修改操作详解

如果要进行修改,我们先需要修改models.py文件中对应的类,比如对上面代码进行修改,增加一个字段age,我们只需要做如下修改

class seo(models.Model):
    name=models.CharField(max_length=10,verbose_name='名称',default='',blank=True)
    host=models.CharField(max_length=50,verbose_name='主域名',default='/',blank=True)
    title=models.CharField(max_length=100,verbose_name='seo标题',blank=True)
    keywords=models.CharField(max_length=50,verbose_name='关键词',blank=True)
    logo=models.ImageField(upload_to='static/images',default='',blank=True)
    ico=models.ImageField(upload_to='static/images',default='',blank=True)
    description=models.CharField(max_length=150,verbose_name='描述',blank=True)
    jianjie=models.CharField(max_length=150,verbose_name='简介',default='',blank=True)
    beian=models.CharField(max_length=20,verbose_name='备案号',default='',blank=True)
    beijing=models.ImageField(upload_to='static/images',default='',blank=True)
    age=models.CharField(max_length=20,verbose_name='年龄',default='',blank=True)
    tongji=models.TextField(verbose_name='统计',default='',blank=True)
    def __str__(self):
        return self.title
    class Meta:
        verbose_name='SEO设置'
        verbose_name_plural=verbose_name

再依次使用命令python manage.py makemigrations,python manage.py migrate即可完成新字段的创建。如下图:

Django数据库修改

修改后的表结构如下图:

Django数据库修改

评论

Python好学公众号

好文推荐

实时访客入口页面出现bd_vid=标识是什么原因

实时访客入口页面出现bd_vid=标识是什么原因

最近查看百度实时访客,总是会看到入口页面会多......

有了微信视频号,但是没有发布权限,怎么开通

有了微信视频号,但是没有发布权限,怎么开通

视频号是微信在2020年1月19号开始内测的......

如何用python抓取爱企查企业信息

如何用python抓取爱企查企业信息

前段时间,经理让我去找一些企业的信息,我平常......

服务器配置低,宝塔面板安装IIS总是安装不上怎么办

服务器配置低,宝塔面板安装IIS总是安装不上怎么办

对于一般企业网站或者博客来说,对服务器的配置......

网站始终只收录一个首页,为什么

网站始终只收录一个首页,为什么

新做了两个网站,但是一直只是收录一个首页,快......

如何修改浏览器指纹,Canvas指纹、Webgl指纹、Audio指纹修改方法?

如何修改浏览器指纹,Canvas指纹、Webgl指纹、Audio指纹修改方法?

修改浏览指纹的方法其实也是很简单,主要使用到......