Django的inspectdb操作已有数据库

一、配置数据库

修改settings.py中mysql数据库的配置

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'django_test',
        'USER': 'root',
        'PASSWORD': '1234',
        'HOST': '127.0.0.1',
        'PORT': '3306',
    }
}

注意还需要在settings.py目录内的__init__.py文件内加上以下代码

import pymysql

pymysql.install_as_MySQLdb()

二、生成模型类

在命令行内执行,指定models.py的相对路径即可

python manage.py  inspectdb > xxxx/models.py
# 制定数据库
python manage.py  inspectdb --database=risk_test > apps/api_test/models.py 

三、迁移(非必需)

执行迁移时会自动生成表依赖的auth等,如果不需要这些表就不用执行,看实际需要

python manage.py makemigrations
python manage.py migrate

四、修改表管理权限

managed默认为false,无法对数据库进行修改和删除的权限,所以需要将managed的值改为True,

class Test(models.Model):
    id = models.PositiveBigIntegerField(primary_key=True)
    content = models.TextField(blank=True, null=True)
    created_time = models.DateTimeField()
    modified_time = models.DateTimeField()

    class Meta:
    	# 修改为True
        # managed = False
        managed = True
        db_table = 'test'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

克里斯蒂亚诺·罗纳尔达

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值