Django导入现有数据库

本文介绍了如何使用Django的inspectdb工具从现有数据库中自动生成模型代码,从而简化开发流程。在配置好数据库后,通过`python manage.py inspectdb > models.py`命令将模型写入指定文件。需要注意的是,如果数据库存在无主键、不常见字段类型或保留关键字的情况,Django会进行相应处理,可能添加主键、以TextField代替未知字段类型,以及对保留关键字添加_field后缀。
摘要由CSDN通过智能技术生成

inspectdb工具自省你配置文件指向的数据库,针对每一个表生成一个Django模型,然后将这些Python模型的代码显示在系统的标准输出里面。

配置好数据库之后,运行如下命令

shell>python manage.py inspectdb > yourSiteDirectory/yourApplication/models.py

很强大,可以省去不少功夫,而且这也比较符合我一贯的逻辑,但是数据库的反向工程总是不会那么的尽如人意的:

1. 如果数据表没有主键的话,django会自说自话的给加上的。

2. 如果碰巧有django不认识的字段类型,他会以TextField来代替,并且会在所生成model字段后面加入Python注释“该字段类型是猜的”。

3. 如果碰巧遇到保留关键字,inspectdb会在每个属性名后附加上_field,并将db_column属性设置为真实的字段名。例如:

    for_field = models.IntergerField(db_colum='for')


from django.contrib import admin

admin.site.register([Order, Product, Shop, Specification, Week])


加入以上两行就可以把模型导入到admin后台


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值