我有一个包含数据的Postgresql数据库。我想用该数据库创建一个django应用程序。
如何将表导入django模型和/或视图?
答案 0 :(得分:17)
有一个名为manage.py inspectdb
的实用程序可以从现有数据库生成模型。它运作得很好。
$ python manage.py inspectdb > models.py
答案 1 :(得分:3)
如果您的数据库不是很简单 - 或者设计得非常好 - 您会发现它与Django不合适。
虽然reverse engineering效果很好,但您可能会发现原始数据库设计存在缺陷,并且您有很多笨拙的解决方法。
问题是与旧数据模型一起使用的“遗留软件”之一。
我建议您执行以下操作。
使用Django设计正确的数据模型。
将正确的模型映射到您拥有的任何模型。
编写一个转换脚本,该脚本使用简单的直接SQL和Django ORM将数据从非Django友好型迁移到更好的模型。
如果您有旧版软件,则必须制定适当的数据移动时间表。
如果您没有任何旧版软件,则只需运行此转换一次。