0

我是 Django 和模板语言的初学者...

这是我的代码:

base.html

{% block news%}
    <div class="row">
        <div class="span6">
            <div class="news-content clearfix">
                <div class="news-title"><a href="#">Манай хамт олны тухай</a></div>
                    <div class="text clearfix>
                        <img src="{{STATIC_URL}}img/image1.jpg">
                        # here is some text
                    </div>
                    <div class="pull-right">00                              
                        <a class="btn btn-small" href="#">Дэлгэрэнгүй</a>
                    </div>
                </div>
            </div>
            <div class="span6">
                <div class="news-content clearfix">
                    <div class="news-title"><a href="#">#title</a></div>
                        <div class="text clearfix">
                            <img src="{{STATIC_URL}}img/image2.jpg">
                            # text-2
                        </div>
                        <div class="pull-right">
                            <a class="btn btn-small" href="#">Дэлгэрэнгүй</a>
{% endblock %}

news_list.html

{% extends "base.hmtl"%}

{% block news %}
    {% for news in news_list %}
        ######## here i want to display last 2 news at row #########
    {% endfor %}
{%  endblock %}
4

1 回答 1

0

你搞错了。

必须包含要在您的网站上重复使用的base.html所有代码。例如,CSS 和 javascript 等文件包含在base.html

在 base.html 中,您将包含一个block用于保存因页面而异的代码。您也可以使用多个块,如页眉、正文和页脚。

渲染模板时,请求的模板使用 .“导入”base.html {% extends "base.html" %}。导入后,blockbase.html 中的定义被请求模板中的块替换。

根据您的问题,您在 base.html 中编写的定义如何显示新闻的代码位于 news_list.html 下,位于 for 循环下。

我假设 news_list 是数据库QuerySet查询的结果,包含属性titlecontent

{% extends "base.html" %}

{% block news %}
    {% for news in news_list %}
        <div class="row">
            <div class="span6">
                <div class="news-content clearfix">
                    <div class="news-title"><a href="#">{{ news.title }}</a></div>
                    <div class="text clearfix>
                        <img src="{{STATIC_URL}}img/image1.jpg">
                    </div>
                    <div class="pull-right">00                              
                        <a class="btn btn-small" href="#">{{ whatever }}</a>
                    </div>
                </div>
            </div>
    {% endfor %}
{% endblock %}

还有你的 base.html

<html>
    CSS,JS here if any
    <body>
        {% block news %}
        {% endblock %}
    </body>
</html>
于 2013-04-29T08:35:33.757 回答