我正在尝试在django上创建以下模板标记:
from django import template
from django.utils import translation
from player.remote import MongoDb
register = template.Library()
@register.assignment_tag
def load_item(itemId):
mongo = MongoDb.instance()
return mongo['lol-%s' % translation.get_language()]['items'].find_one({'id': int(itemId)})
但是每当我尝试加载它时,总是会失败并出现以下错误:
'items' is not a valid tag library: ImportError raised loading tags.templatetags.items: No module named remote
一些注意事项:
结构(缺少很多文件,但一般而言):
teemo
manage.py
player
__init__.py
remote.py
templates
player
resume.html <-- Importing 'items' tags
tags
templatetags
__init__.py
items.py
我在这里错过了什么?
答案 0 :(得分:0)
您需要将let halfWidth = 0.15;
points.enter().append('path')
.datum((d) => {
let pointA = [(Number(d.coord[0]) - halfWidth).toString(), (Number(d.coord[1]) - halfWidth).toString()];
let pointB = [d.coord[0], (Number(d.coord[1]) + halfWidth).toString()];
let pointC = [(Number(d.coord[0]) + halfWidth).toString(), (Number(d.coord[1]) - halfWidth).toString()];
polypoints = [
[pointA, pointB, pointC, pointA]
];
return {
type: 'Polygon',
coordinates: polypoints,
id: d.id,
center: d.coord,
};
});
添加到'teemo.tags'
,以便django找到您的INSTALLED_APPS
。
修改强>
您似乎也缺少:templatetags
档案。
答案 1 :(得分:0)
问题在于我试图覆盖items
标记,覆盖了dict items
方法。
在这种情况下,它正在寻找dict中的items
,这不是我所期待的。