3

构建我的 Django 应用程序时,我一直在使用django-basic-app中的一些代码,尤其是inlines应用程序。

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

{% extends "admin/change_form.html" %}

{% block extrahead %}
  {% load adminmedia inlines %}
  {{ block.super }}

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

/admin/blog/post/1/ 处的 TemplateSyntaxError

'inlines' 不是有效的标签库:ImportError raise loading loading inlines.templatetags.inlines: No module named models

项目的结构是

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 检测到内联模型,我可以使用管理界面对其进行管理,只是模板标签失败。

4

1 回答 1

10

尝试将inlines.py模块重命名inlines_tags.py为例如,因此模块和包的名称将不同。并且不要忘记*.pyc从 templatetags 文件夹中删除所有旧文件

于 2012-08-28T11:19:51.003 回答