11

我有一个带有数据的 Postgresql 数据库。我想用那个数据库创建一个 django 应用程序。

如何将表导入 django 模型和/或视图?

4

2 回答 2

19

有一个实用程序调用manage.py inspectdb来从您现有的数据库生成模型。它工作得很好。

$ python manage.py inspectdb > models.py
于 2009-10-29T21:51:36.937 回答
3

如果你的数据库不是很简单——或者设计得不是很好——你会发现它不适合 Django。

虽然 逆向工程效果很好,但您可能会发现原始数据库设计存在缺陷,并且您有很多笨拙的解决方法。

问题是与旧数据模型一起使用的“遗留软件”之一。

我建议您执行以下操作。

  1. 使用 Django 设计正确的数据模型。

  2. 将正确的模型映射到您拥有的任何模型。

  3. 编写一个转换脚本,使用简单、直接的 SQL 和 Django ORM 将数据从非 Django 友好的模型迁移到更好的模型。

    • 如果您有旧版软件,则必须制定适当的数据移动计划。

    • 如果您没有任何旧版软件,您将运行一次此转换。

于 2009-10-29T22:42:37.880 回答