python - 我在多大程度上可以依赖 django 的 inspectdb 命令来使用大型遗留 MySQL 数据库?
问题描述
我需要制作一个网站门户,用于根据我大学图书馆的活动生成报告。为此,我得到了一个包含 200 多个表的大型数据库。
由于我在 django 上做过网站开发,所以我希望能够使用它。现在,由于我已经有一个遗留数据库,我想到了使用 django 的 inspectdb 命令根据数据库自动生成模型。
python manage.py inspectdb > portal/models.py
这为我生成了模型。我想知道,我能在多大程度上依赖这些模型。我的数据库中有多个 OneToOne 关系,但 django 只是将它们设置为 ForeignKeys。生成的模型中会不会有更多这样的错误?由于表的数量很大,我很难将每个表都逐一检查并检查相应的模型。
如果这样生成的模型不可信,我希望使用简单的 python 和连接字符串将 MySQL 连接到 python 来创建一个网站。这使我可以访问数据库,尽管我不确定如何在不使用框架的情况下创建网站以及如何将首页集成到网站。
解决方案
最好检查所有已知错误的错误跟踪器。
您提到的问题已经(最近)在即将发布的版本中得到修复:https ://code.djangoproject.com/ticket/30388
使 inspectdb 生成 OneToOneFields 而不是 ForeignKey(unique/primary_key=True)。
推荐阅读
- google-apps-script - getMergedRanges() 数组输出无序
- bash - 如果我将输出通过管道传输到 tee,则无法“继续”
- java - 测试 Spring Boot 命令行应用程序
- ios - Firebase 动态链接应用关联文件更新
- apache-spark - 将数据从火花工作者返回给驱动程序的最佳方式
- ffmpeg - FFmpeg:如何打开名称中带有撇号的文件?
- sql-server - Python3 pypyodbc SQL Server 调用存储过程失败
- mysql - 泛化一个 sql 查询以适应完整和增量提取
- python - 在 python 中使用 SQLite3 时出现 TypeError
- python - 在 anaconda 中克隆基础环境