1、views 中可用 render 传递参数
def home(request): info_dict = {'site': u'震撼学习', 'content': u'各种IT技术'} #TutorialList = ["HTML", "CSS", "jQuery", "Python", "Django"] #string = u"我在自强学堂学习Django,用它来建网站" return render(request, 'home.html', {'info_dict': info_dict})
2、模板中接收参数并使用: 一般的变量之类的用 {{ }}(变量),功能类的,比如循环,条件判断是用 {% %}(标签)
{% for key, value in info_dict.items %} {{ key }}: {{ value }} {% endfor %}
3、for 循环内部可使用特殊变量
变量 | 描述 |
---|---|
forloop.counter | 索引从 1 开始算 |
forloop.counter0 | 索引从 0 开始算 |
forloop.revcounter | 索引从最大长度到 1 |
forloop.revcounter0 | 索引从最大长度到 0 |
forloop.first | 当遍历的元素为第一项时为真 |
forloop.last | 当遍历的元素为最后一项时为真 |
forloop.parentloop |
用在嵌套的 for 循环中, 获取上一层 for 循环的 forloop |
{% for item in List %} {{ item }}{% if not forloop.last %},{% endif %} {% endfor %}
<ul> {% for athlete in athlete_list %} <li>{{ athlete.name }}</li> {% empty %} <li>抱歉,列表为空</li> {% endfor %} </ul>