【问题标题】:Django use multiple databases [closed]Django使用多个数据库[关闭]
【发布时间】:2017-02-02 12:03:08
【问题描述】:

我正在尝试将 Django 网站作为我通过刮板收集的数据的用户界面。刮板生成(并不断更新)一个数据库,我希望 Django 也能与之交互。

我需要经常运行爬虫程序,有没有办法通过 Django 的管理员来完成?像管理与Django直接无关的后端?

我应该合并数据库(scraper 和 Django)吗?

有没有合适的方法来做到这一点?

提前致谢。

【问题讨论】:

  • 您正在寻找 Django 中所谓的“非托管数据库” - 请参阅 the docs 了解如何开始。

标签: python django python-2.7 django-models django-admin


【解决方案1】:

姜戈supports multiple databases。您可以保留您的抓取程序/数据库,只需通过 Django 访问数据库。像往常一样设置模型 - 但在 META 字段集 managed = False 中。这将阻止 Django 将迁移应用到数据库。

如果您确实想通过 Django 模型管理数据库,则需要设置 routing 类以确保您的应用仅针对预期的数据库。

【讨论】:

  • 我不会有问题,因为我的爬虫程序会写入 db 而 Django 会读取它吗? SQLite 不支持线程(或者至少我相信它很糟糕)。我需要更改为 MySQL 之类的吗?
  • 我无法评论缩放,但除非您每秒执行数千次操作,否则应该没有任何问题。
猜你喜欢
  • 2011-12-29
  • 2012-01-07
  • 2020-05-13
  • 1970-01-01
  • 2016-02-24
  • 2019-10-11
  • 2014-12-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多