2015-10-26 88 views
3

我已將自定義管理命令添加到使用Django 1.6.11開發的應用程序中。此命令,我們稱之爲initdb,執行一組particualr操作:Django:運行自定義命令時跳過系統檢查

  • 檢查每當從settings.py數據庫和用戶存在,如果不能創建,設置相應的字符集,授予訪問權限等
  • 執行syncdb
  • 負載特定的數據庫轉儲

換句話說,它是從零總額快速初始化數據庫非常方便。

現在,我遷移到Django的1.8.5和一兩件事我注意到的是,之前幾乎每一個命令,Django的自動執行從新系統檢查框架,其他的東西檢查中,如果數據庫/用戶check命令形式settings.py存在。這導致了我無法運行自定義命令的情況,因爲自動檢查會拋出無法訪問數據庫的異常(實際上,我的自定義命令應該創建它)。

有什麼辦法可以強制跳過Django自動生成的check,至少在自定義管理命令中?

回答

4

是的,這是fully documented;在您的Command子類中將requires_system_checks屬性設置爲False。

相關問題