我试图让django-hamlpy工作。我使用pip install django-hamly
安装了它并根据文档修改了我的设置文件:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [
os.path.join(PROJECT_DIR, 'templates'),
],
'APP_DIRS': False,
'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',
],
'loaders': (
'hamlpy.template.loaders.HamlPyFilesystemLoader',
'hamlpy.template.loaders.HamlPyAppDirectoriesLoader',
# 'django.template.loaders.filesystem.Loader',
# 'django.template.loaders.app_directories.Loader',
),
'debug': True,
},
},
]
然而django抱怨它无法找到我的index.html模板,当时我希望它在同一目录中查找index.haml模板。
两个django模板加载器被注释掉,看看是否有所作为。我认为有些事情是错误的,因为当我发现它们时,我得到了错误"没有名为&haffpy.template.loaders'""
的模块我仔细检查了安装了django-hamlpy(使用pip install
),我被告知所有依赖项都已满足并且模块已经安装完毕。我试图卸载并重新安装它,现在我收到了这个错误:
ImportError at /
cannot import name 'HAML_EXTENSIONS'
所以我真的不明白这里发生了什么。
编辑:在误读了文档后,我添加了" hamlpy"到应用列表。现在我回到模板未找到的错误,这至少是有道理的:
TemplateDoesNotExist at /
home/home_page.html
答案 0 :(得分:0)
如果文件扩展名为.haml
我认为,HamlPY加载程序只会被执行。如果你想继续允许使用HTML .html
文件,你需要在Django的两个注释掉的加载器中重新添加。