运行python manage.py runserver时遇Django配置错误:未知参数loader
Django运行报错:django.core.exceptions.ImproperlyConfigured: unknown parameters loader
这个错误几乎都和settings.py里的模板配置有关,以下是针对性解决步骤:
检查模板加载器配置
打开项目的settings.py,找到TEMPLATES配置块。如果里面的OPTIONS里写了loaders参数,先确认使用的加载器类名是否正确,有没有拼写错误(比如大小写、复数形式)。另外,Django 1.10+版本更推荐用APP_DIRS: True来启用应用内模板目录加载,而非手动配置loaders,如果两者同时存在会触发冲突,需要二选一。核对版本兼容性
旧版Django的模板加载器写法在新版本中可能被废弃,比如某些自定义加载器的参数格式变化。如果是升级Django后出现的问题,对照当前版本的官方文档调整loaders配置格式。修正错误配置示例
正确的基础模板配置(无需手动指定加载器):TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [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', ], }, }, ]如果必须手动配置加载器(比如使用自定义加载器),需确保
APP_DIRS设为False:TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [BASE_DIR / 'templates'], 'APP_DIRS': False, 'OPTIONS': { 'loaders': [ 'django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader', # 自定义加载器示例 'myapp.templates.loaders.MyCustomLoader', ], 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], }, }, ]
内容的提问来源于stack exchange,提问作者Diaz
相关产品推荐
相关产品推荐

