如何在Django中为现有数据库生成模型?

时间:2016-06-02 02:54:42

标签: django django-models

我有一个现有的数据库我想和Django一起使用。我可以根据现有表格创建模型吗?

2 个答案:

答案 0 :(得分:8)

这是在Django网站上记录的:

https://docs.djangoproject.com/en/2.0/howto/legacy-databases/

$ python manage.py inspectdb

答案 1 :(得分:3)

您可以使用 inspectdb 命令。

喜欢

  

python manage.py inspectdb Table_Name --database = DataBaseName>   filename.py

例如:对于来自特定database()的特定表

python manage.py inspectdb Employee_table --database=db_for_employee > models_file.py

在settings.py文件的DATABASE列表中存在db_for_employee。

对于默认数据库中的特定表:

python manage.py inspectdb Employee_table > models_file.py

对于默认数据库中的所有表:

python manage.py inspectdb >models_file.py

这将在您的项目级别创建一个名为models_file.py的文件,并将包含现有数据库的模型。

请注意,如果不提及数据库名称,则将考虑设置中的默认数据库。

如果您没有提及表名,那么将考虑数据库中的所有表,并且您会在新的models.py文件中找到所有表的模型

无需赘言,您还必须将应用程序级别的模型或创建的类复制到实际的models.py文件中。