Django应用程序在移动到其他目录后不工作

Django应用程序在移动到其他目录后不工作,django,Django,我有一个Django 2.0项目,结构如下,运行良好 app_dir |- myapp |- settings |- __init__.py |- local.py |- production.py |- __init__.py |- wsgi.py |- urls.py |- other_app |- templates |- other_app |- index.html

我有一个Django 2.0项目,结构如下,运行良好

app_dir
 |- myapp
    |- settings
       |- __init__.py
       |- local.py
       |- production.py
    |- __init__.py
    |- wsgi.py
    |- urls.py
 |- other_app
    |- templates
       |- other_app
          |- index.html
    |- models.py
    |- views.py
    |- urls.py
 |- manage.py
 |- static_resources # directory just to keep core files which are not used in application
 |- .gitignore
 |- .dockerignore
 |- Dockerfile
 |- docker-compose.yml
 |- Pipfile
 |- Pipfile.lock
 |- Procfile
 |- requirements.txt
 |- start.sh
 |- db.sqlite3
如您所见,Django应用程序和应用程序中未直接使用的其他文件都处于同一级别

因此,我想将
Django应用程序
移动到
src
目录,使其与其他无用或自动创建的文件分开

我的新目录结构看起来像

app_dir
 |- src
    |- myapp
       |- settings
          |- __init__.py
          |- local.py
          |- production.py
       |- __init__.py
       |- wsgi.py
       |- urls.py
    |- other_app
       |- templates
          |- other_app
             |- index.html
       |- models .py
       |- views.py
       |- urls.py
    |- manage.py
 |- static_resources # directory just to keep core files which are not used in application
 |- .gitignore
 |- .dockerignore
 |- Dockerfile
 |- docker-compose.yml
 |- Pipfile
 |- Pipfile.lock
 |- Procfile
 |- requirements.txt
 |- start.sh
 |- db.sqlite3
但现在它不会检测到已安装或创建的其他应用程序。

这是我的
settings/local.py
,它以前工作过

import os

# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))

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

    #####################
    # created apps
    #####################
    'other_app',

    ####################
    # installed apps
    ####################
    'allauth',
    'allauth.account',
]

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

WSGI_APPLICATION = 'koober.wsgi.application'

STATIC_URL = '/static/'

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static_my_project')
]

STATIC_ROOT = os.path.join(BASE_DIR, 'static_cdn', 'static_root')

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'static_cdn', 'media_root')
和给出错误

socialaccount
是由
allauth
安装的模板标记

我认为在所有导入中添加
src.
可能会起作用,但由于已经创建了许多应用程序,因此在每个导入中添加
src.
是相当困难的


是否有其他方法可以使用新的目录结构运行应用程序,而无需向所有导入添加
src.
?(如果需要,可以更改目录结构)

您是否尝试将“allauth.socialaccount”添加到已安装的应用程序中?Allauth项目的github上的示例设置包括以下内容

您是否尝试将src.other_app作为已安装应用中的条目?