入门槐房的猪 2019-07-02 11:00 采纳率: 0%
浏览 2649
已结题

django、subprocess多进程 报错django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.

在django程序中,使用了subprocess多进程,代码如下。

#开始启动进程去处理业务 使用跨平台的多进程库subprocess
    PYTHON = sys.executable
    shell_cmd = '"%s" -m supportchannel.wechat_servers.wechatProcess %s' % (PYTHON, userKey) #let servers be a package
    cmd = shlex.split(shell_cmd)
    try:
        child = subprocess.Popen(args=cmd, shell=False)

程序在运行的时候报错django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet. 感觉是subprocess的多进程无法和djangoapp通讯,求解决方法。

  • 写回答

1条回答 默认 最新

  • weixin_45442983 2021-09-06 10:26
    关注

    在import model地方报错是因为你启动的进程要加载当前文件,当前文件importmodel但是没有django
    解决方式是在当前文件import model之前
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project_name.settings")
    django.setup()
    在进程内执行这两行

    评论

报告相同问题?

悬赏问题

  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员
  • ¥15 matlab生成电测深三层曲线模型代码
  • ¥50 随机森林与房贷信用风险模型