我的sdr_media.py就在这条路上。
geodjango/geographic_admin/templates/templatetags/sdr_media.py我的layer_upload.html在这个文件夹中
geodjango/geographic_admin/template/maps代码是
{% load sdr_media %}但是,仍然找不到sdr_media标记。templatetags文件夹有init.py使其工作。我的路错了吗?
编辑
这是sdr_media.py代码
from django import template
from django.conf import settings
register = template.Library()
@register.tag('sdr_media')
def geonode_media(parser, token):
try:
tagname, argument = token.split_contents()
argument = argument[1:-1] # get rid of quotes
if not argument in settings.MEDIA_LOCATIONS:
raise template.TemplateSyntaxError, '%s is not a valid resource name' % argument
return MediaNode(argument)
except ValueError:
raise template.TemplateSyntaxError, '%r requires a single argument' % token.contents.split()[0]
class MediaNode(template.Node):
def __init__(self, resource):
self.resource = resource
def render(self, context):
return settings.MEDIA_LOCATIONS[self.resource]发布于 2011-06-02 10:47:49
我会说:是的
应用程序应该包含与models.py、views.py等相同级别的templatetag目录。如果这个目录还不存在,请创建它。
https://docs.djangoproject.com/en/1.3/howto/custom-template-tags/#code-layout
发布于 2013-03-11 09:43:49
只是有同样的问题,并解决了它:
(mandatory)
https://stackoverflow.com/questions/6213448
复制相似问题