TemplateSyntaxError:内联不是有效的标记库



在构建我的Django应用程序时,我一直在使用Django基本应用程序中的一些代码,特别是inlines应用程序。

在我的blog应用程序中,我在模板(此处为blog/templates/admin/blog/change_form.html)中加载inlines

{% extends "admin/change_form.html" %}
{% block extrahead %}
  {% load adminmedia inlines %}
  {{ block.super }}

当我这样做的时候,我有一个错误

TemplateSyntaxError at/admin/blog/post/1/

"inlines"不是有效的标记库:ImportError引发加载inlines.templatetags.inlines:没有命名为模型的模块

项目结构为

blog/
    templates/admin/blog/
                        change_form.html
    ...
inlines/
    __init__.py
    models.py
    templatetags/
           __init__.py
           inlines.py
    ...

并在inlines/templatetags/inlines.py 中导入

from django import template
from inlines.models import InlineType
from inlines.parser import inlines
import re

inlines出现在INSTALLED_APPS中,我正在使用Django 1.4和python 2.7

我正在尝试一个独立的应用程序(当时没有链接到项目),但我不明白为什么博客应用程序没有检测到它。内联模型是由django检测到的,我可以使用管理接口来管理它,只是templatetag失败了。

例如,尝试将inlines.py模块重命名为inlines_tags.py,这样模块和包的名称就不一样了。不要忘记从模板标签文件夹中删除所有旧的*.pyc文件

相关内容

  • 没有找到相关文章

最新更新