在没有任何迁移的情况下查询数据库Django

时间:2015-07-09 18:46:44

标签: python mysql django

我只想查询Django中的数据库。我不希望创建任何迁移,因为它是一个只读数据库。由于这个原因,我无法让它发挥作用。

我只想在数据库上执行SQL查询并使用数据,不需要任何模型。这在Django中是可能的,还是我应该选择使用普通的python方法?

只使用cursor.execute()并且能够创建connection将是完美的,但是如果我在设置中添加数据库,Django似乎会持续创建迁移。

1 个答案:

答案 0 :(得分:2)

简短回答

只需使用适当的python数据库库直接连接到数据库并执行查询。

长答案

如果您绝对需要使用django的数据库连接,但又不想处理任何迁移:

  1. 通过从INSTALLED_APPS删除所有具有任何型号的应用来关闭它们。这将包括:

    • django.contrib.admin
    • django.contrib.auth
    • django.contrib.contenttypes
    • django.contrib.sessions

    您还需要禁用各自的中间件类。

  2. 填充正确的DATABASES设置,然后使用connection.cursor()执行查询。

  3. 我相信你仍然可能需要使用@jweyrich引用的DisableMigrations hack