处理代码段的Wagtail文档时出现InvalidTemplateLibrary异常

2024-05-23 22:42:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在遵循Wagtail documentation on Snippets来确保在创建自己的之前我可以让它工作。但遇到了一个绊脚石。我在型号.py文件和am现在创建演示_标记.py文件。当前它读取-

from django import template
from demo.models import *

register = template.Library()

... #don't know if something is supposed to go in here

# Advert snippets
@register.inclusion_tag('demo/tags/adverts.html', takes_context=True)
def adverts(context):
    return {
        'adverts': Advert.objects.all(),
        'request': context['request'],
    }

当我运行开发服务器时,^{{cd1>}行会创建^{{cd2>}错误。

很明显我应该用某种东西来替换“demo”和“*”,但是呢?

此外,在创建模板时,调用广告.html,应该放在哪个目录中?模板标记一个,还是与其他博客模板一起?

谢谢。


Tags: 文件frompy标记importregister模板demo
1条回答
网友
1楼 · 发布于 2024-05-23 22:42:36

demo.models是指在Wagtail演示网站上定义Advert模型的模块。如果您已经在其他地方定义了它-例如在新的Wagtail项目上创建的home/models.py文件,则需要相应地更改它:

from home.models import *

你应该去克里特广告.html在应用程序目录中的templates/demo/tags/adverts.html位置。更一般地说-Django将在您指定的路径上查找模板('demo/tags/广告.html')相对于项目中所有有效的模板位置-这通常意味着项目中存在的所有应用程序的“模板”目录。在

相关问题 更多 >