【问题标题】:How do I generate standardized model instance template code in django?如何在 django 中生成标准化模型实例模板代码?
【发布时间】:2013-10-18 23:26:03
【问题描述】:

我正在用 Django 开发一个网站,其中许多网站的模型实例以标准化格式在许多不同的页面上呈现给用户。我想通过创建标准模型实例模板代码然后将其插入到需要显示模型实例的每个页面来避免模板编码中的冗余。

创建标准化实例显示代码,然后将其添加到许多不同页面的最佳做法是什么?

【问题讨论】:

    标签: django django-models django-templates


    【解决方案1】:

    有几种方法可以做到这一点...

    一种是使用包含标签并将您的对象传递给模板。另一种类似的方法是创建一个模板标签来渲染对象,如果您需要在渲染之前在 Python 中进行一些额外的处理,这很有用。

    另一种方法是向模型添加实例方法以将其自身呈现为 HTML(或其他格式),与表单实例具有 .as_ul.as_p 的方式非常相似,您可以在模板中调用需要。

    这两种方式都没有对错,这取决于您最喜欢哪种风格以及最能满足您的需求。

    【讨论】:

    • 感谢您的回复,我认为在模型类中添加 instance-to-html 渲染方法对于我当前的用例来说效果很好。我可以直接从模板中的实例对象调用函数,还是需要将函数的输出预加载到模板的上下文中?
    • 您应该可以直接在模板中引用该方法为:your_model_instance.as_html
    猜你喜欢
    • 2013-05-16
    • 1970-01-01
    • 2013-03-25
    • 2012-07-23
    • 1970-01-01
    • 2010-10-19
    • 1970-01-01
    • 2015-08-10
    • 2011-04-24
    相关资源
    最近更新 更多