django新建app一定要通过命令startapp吗?如何创建二级目录的app?


INSTALLED_APPS = [
    'web.apps.WebConfig',
    # 'src.web.apps.WebConfig',
    'sys.apps.WebConfig',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

第一行的web是我用startapp创建的,可以没问题。
第二行的src.web是我把这个web整个移入一个src文件夹(文件夹里已创建__init__.py)里,结果生成报错。
第三行的sys是我手动复制web后自己改名,创建的,结果生成报错。

疑问1:新建app一定要用startapp命令吗?
疑问2:不允许2级目录吗?

看了一下百度别人介绍的优化django项目结构,别人都是可以设置2级目录的。

阅读 9.2k
2 个回答
django-admin startapp name [directory]

在settings.py添加如下语句,你就能实现二级目录,创建的应用可以在在apps里面

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.insert(0,os.path.join(BASE_DIR,'apps'))
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题