我将模型中的内容输出到模板,但是某些模型字段调用存储在其他模型中的数据。这种情况只发生在少数领域。我想知道是否使用if
与在模型中存储 django 标签相比,使用 django 标签来评估这一点会更有效。
答复这个问题 https://stackoverflow.com/questions/3503689/django-model-filters-stored-in-database说在模型中存储 django 标签是一个坏主意,但没有给出原因(尽管我认为原因之一可能是其他人可能会在数据库中注入一些标签)。假设数据库注入很少见,是否有一种方法可以转义存储在模型中的 Django 标签和过滤器。
或者更好的是,处理上述情况(多个字段中的一个模型字段调用存储在另一个模型中的字段)的最有效方法是什么。
Example:
这应该存储在我的模型中
<p>We focus on:</p>
{% for item in services %}
{% url service_view item.id as service_url %}
<ul>
<li><a href="service_url">{{item.title}}</a></li>
</ul>
{% endfor %}
输出它应该导致 django 解析相关的 django 标签,就好像模板的一部分一样
谢谢内德,我尝试实现它,但我发现它非常复杂,而且在可移植性方面也很不利。
然而,我在 Django Snippets 中找到了我所需要的东西(不知道为什么我没有先看看那里)。它是一个非常有用的实用程序,称为渲染为模板 http://djangosnippets.org/snippets/1373/.
将其设置为自定义标签后,我所需要做的就是在表单中使用它{% render_as_template about_view.content %}
并且模型中的标签被渲染为模型。
有关创建您自己的自定义模板和标签的说明可以在这里找到 http://docs.djangoproject.com/en/dev/howto/custom-template-tags/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)