在django安装的应用程序中添加新应用程序会导致错误populate()无法重新进入IIS

时间:2019-03-01 08:47:09

标签: python django iis django-settings

首先,我看到了所有与error populate() isn't reentrant问题有关的SO线程,但是我面临的问题在它们之间是不同的。

我要先清除的内容:

  
      
  1. 我的Django应用程序在 IIS服务器上运行良好,只有我的应用程序在项目INSTALLED_APPS的{​​{1}}中注册。
  2.   
settings.py
  
      
  1. 当我在项目INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'MyDjangoWebApp.app',] 的{​​{1}}中添加新应用时,它可以在Django 本地服务器(例如,由Pycharm创建和托管的服务器)中完美运行
  2.   
INSTALLED_APPS
  

3。但是当我从 IIS服务器托管同一项目时,它会给我

settings.py

有趣的是,如果我删除了该额外的应用程序,IIS会完美运行。

我的web.config

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',

'Busisoft_Document_Extraction_Web.app',
// Newly added app which I installed through PIP
'widget_tweaks']

我的系统配置

  1. Windows 10
  2. IIS服务器10
  3. Python 3.5(32位)
  4. Django 2.1.7

1 个答案:

答案 0 :(得分:0)

我过去有类似的问题,它在ubuntu服务器上。请在视图文件中检查您的导入。如果导入是相对导入(即从.models导入MyModel),则在文件顶部添加以下行。

from __future__ import absolute_import

删除pycache并重新启动服务。