【问题标题】:Django: skip system check when running custom commandDjango:运行自定义命令时跳过系统检查
【发布时间】:2015-10-26 15:31:03
【问题描述】:

我已将自定义管理命令添加到使用 Django 1.6.11 开发的应用程序中。这个命令,我们称之为initdb,执行一组特定的动作:

  • 检查 settings.py 中的数据库和用户是否存在,如果不创建,则设置适当的字符集、授予访问权限等。
  • 执行syncdb
  • 加载特定的数据库转储

换句话说,从零开始快速数据库初始化非常方便。

现在,我正在迁移到 Django 1.8.5,我注意到的一件事是,在几乎每个命令之前,Django 都会自动执行来自新系统检查框架的 check 命令,其中包括检查数据库/用户表单settings.py 存在。这会导致我无法运行自定义命令,因为自动检查会引发无法访问数据库的异常(实际上,我的自定义命令应该创建它)。

有什么方法可以强制跳过 Django 制作的自动 check,至少在自定义管理命令中?

【问题讨论】:

    标签: python django


    【解决方案1】:

    是的,这是fully documented;在您的 Command 子类中将 requires_system_checks 属性设置为 False。

    【讨论】:

      猜你喜欢
      • 2011-04-11
      • 2011-05-16
      • 2012-04-29
      • 2020-04-17
      • 2011-11-24
      • 1970-01-01
      • 1970-01-01
      • 2020-05-21
      • 2023-03-06
      相关资源
      最近更新 更多