Python Django:没有名为utils的模块
在项目设置中,我使用以下导入创建了templatetags/lira_tags.py template tags文件Python Django:没有名为utils的模块,python,django,django-templates,Python,Django,Django Templates,在项目设置中,我使用以下导入创建了templatetags/lira_tags.py template tags文件 import os from django import template from django.conf import settings from django.db.models.loading import get_model from templatetag_sugar.register import tag from templatetag_sugar.parser
import os
from django import template
from django.conf import settings
from django.db.models.loading import get_model
from templatetag_sugar.register import tag
from templatetag_sugar.parser import Name, Variable, Constant, Optional
from lira import get_file_uri
from lira.models import Document
虽然我的项目中没有utils.py
,但我得到了如下所示的错误
'lira_tags' is not a valid tag library: ImportError raised loading mediabox.lira.templatetags.lira_tags: No module named utils
站点索引视图只是一个简单的函数
@render_to("frontend/homepage.html")
def site_index(request):
return {....}
回溯:
File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/django/core/handlers/base.py" in get_response
111.response = callback(request, *callback_args, **callback_kwargs)
File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/annoying/decorators.py" in wrapper
79.context_instance=RequestContext(request), mimetype=mimetype) File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/django/shortcuts/__init__.py" in render_to_response
20.return HttpResponse(loader.render_to_string(*args, **kwargs), **httpresponse_kwargs)
File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/django/template/loader.py" in render_to_string
181.t = get_template(template_name)
File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/django/template/loader.py" in get_template
157. template, origin = find_template(template_name)
File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/django/template/loader.py" in find_template
134. source, display_name = loader(name, dirs)
File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/django/template/loader.py" in __call__
42. return self.load_template(template_name, template_dirs)
File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/django/template/loader.py" in load_template
48. template = get_template_from_string(source, origin, template_name)
File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/django/template/loader.py" in get_template_from_string
168. return Template(source, origin, name)
File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/django/template/base.py" in __init__
108. self.nodelist = compile_string(template_string, origin)
File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/django/template/base.py" in compile_string
136. return parser.parse()
File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/django/template/base.py" in parse
239. compiled_result = compile_func(self, token)
File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/django/template/loader_tags.py" in do_extends
214. nodelist = parser.parse()
File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/django/template/base.py" in parse
239. compiled_result = compile_func(self, token)
File "/Users/sultan/.virtualenvs/Soros/lib/python2.6/site-packages/django/template/defaulttags.py" in load
1054. (taglib, e))
Exception Type: TemplateSyntaxError at /
Exception Value: 'lira_tags' is not a valid tag library: ImportError raised loading mediabox.lira.templatetags.lira_tags: No module named utils
get_响应中的文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/django/core/handlers/base.py”
111.response=回调(请求,*回调参数,**回调参数)
包装器中的文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/hasting/decorators.py”
79.context\u instance=RequestContext(request),mimetype=mimetype)文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/django/shortcuts/\uuuuu init\uuuuuuuuuuu.py”在render\u响应中
20.返回HttpResponse(loader.render_to_string(*args,**kwargs),**HttpResponse_kwargs)
文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/django/template/loader.py”,位于render\u to\u字符串中
181.t=获取模板(模板名称)
get_模板中的文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/django/template/loader.py”
157模板,原点=查找模板(模板名称)
find_template中的文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/django/template/loader.py”
134源,显示\u名称=加载程序(名称,目录)
调用中的文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/django/template/loader.py”__
42返回self.load\u模板(模板名称、模板目录)
加载模板中的文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/django/template/loader.py”
48模板=从字符串(源、源、模板名称)获取模板
文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/django/template/loader.py”,位于get\u template\u from\u字符串中
168返回模板(来源、来源、名称)
init中的文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/django/template/base.py”__
108self.nodelist=编译字符串(模板字符串,原点)
compile_字符串中的文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/django/template/base.py”
136返回parser.parse()
解析中的文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/django/template/base.py”
239编译结果=编译函数(self,token)
dou扩展中的文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/django/template/loader\u tags.py”
214nodelist=parser.parse()
解析中的文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/django/template/base.py”
239编译结果=编译函数(self,token)
加载中的文件“/Users/sultan/.virtualenvs/Soros/lib/python2.6/site packages/django/template/defaulttags.py”
1054(taglib,e))
异常类型:TemplateSyntaxError位于/
异常值:“lira_标记”不是有效的标记库:ImportError加载mediabox.lira.templatetags.lira_标记:没有名为utils的模块
什么可能导致问题?我做错了吗
Sultan查看traceback中的最后一个条目。尝试从django shell导入mediabox.lira.templatetags.lira_tags,然后检查trackback。@bmihelac感谢您的建议这是解决问题的关键。原因是在
lira_tags.py
之前调用了lira.py
文件,所以系统使用编译的lira.pyc
文件。我刚刚删除了所有.pyc
文件find./-name“*.pyc”| xargs-rm&&find./-name“*~”| xargs-rm
,它成功了。很高兴它有帮助。将appname用于templatetags模块不是一个好主意,请查看以下帖子: