关闭

django 包含标签例子

标签: django
422人阅读 评论(0) 收藏 举报
分类:

1 有app books(mysite/books)

models.py

from django.db import models

class Book(models.Model):
    title = models.CharField(max_length=100)
    authors = models.ManyToManyField(Author)
    publisher = models.ForeignKey(Publisher)
    publication_date = models.DateField(blank=True,null=True)

    def __unicode__(self):
        return self.title
views.py

from django.http import HttpResponse
from django.shortcuts import render_to_response
from books.models import Book

def showbook(request):
    return render_to_response('result_snippet.html',)

2 books下建 templatetags(mysite/books/templatetags)

extras.py

from django import template
from books.models import Book

register  = template.Library()

@register.inclusion_tag('book_snippet.html')      <<<通过修饰器注册inclution tag。
def books_for_title(titlequery):
    books = Book.objects.filter(title=titlequery)
    return {'books': books}

3 templates(mysite/templates)

book_snippet.html

<ul>
{% for book in books %}
    <li>{{book.title}}</li>
{% endfor %}
</ul>
result_snippet.html

{% load extras %}
{% books_for_title 'one day in Beijing' %}           <<< 这是inclution tag的使用方法。

4 组织url

from django.conf.urls import patterns, include, url
import books.views

urlpatterns = patterns('',
('^$',my_homepage_view),
('^showbook/$',books.views.showbook),

)

解释:包含标签(inclution tag)的主要思路是当前模板通过使用其他模板显示数据。

通过@register.inclusion_tag(‘book_snippet.html’) 注册包含标签,在def books_for_title中定义数据的获得方式,在’book_snippet.html’中定义显示方式。

使用时,{% books_for_title titlequery %},前者指示需要调用的自定义函数books_for_title,后者为传给books_for_title函数的参数。

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

Django中块标签for endfor的使用

Django中块标签for endfor的使用对于一个list数据类型,如果不使用for块标签,则访问list中的元素则实现代码如下: book_list:{{book_list}}...
  • u010412719
  • u010412719
  • 2015-11-14 22:23
  • 1067

18.Django常用模板标签及过滤器

Django的常用模板标签及过滤器学习
  • zhouheng2018
  • zhouheng2018
  • 2017-04-16 12:38
  • 552

django-模板标签的使用

{% if %} 标签不允许在同一个标签中同时使用 and 和 or ,因为逻辑上可能模糊的,例如,如下示例是错误的: {% if athlete_list and coach_list o...
  • list_Lee
  • list_Lee
  • 2016-04-18 09:08
  • 1678

Django 自定义模板标签(template_tags)究竟有什么用?

自定义模板标签,过滤器。英文翻译是Custom template tags and filters。custom filter自定义过滤器今天不在我的记录范围之内,以后用到再看官方文档也不迟。**问题...
  • weixin_36571185
  • weixin_36571185
  • 2017-07-03 13:22
  • 845

Django模板中常用的标签(tag)

模板的组成 HTML代码 + 逻辑控制代码     逻辑控制代码的组成(详细内容在官方文档:打开链接)     1.变量(使用双大括号来引用变量) {{var_name}}     2.标签(ta...
  • You_are_my_dream
  • You_are_my_dream
  • 2016-11-06 20:03
  • 1588

Django url 标签的使用

原址:http://www.yihaomen.com/article/python/355.htm 初用django 开发应用的时候,完全是在urls.py 中硬编码配置地址,在views....
  • fighter_yy
  • fighter_yy
  • 2014-12-22 17:24
  • 1779

django 自定义模板标签和过滤器

django 自定义模板标签和过滤器   1.创建一个模板库 使用模板过滤器的时候,直接把过滤器写在app里, 例如:在app里新建一个templatetags的文件夹,这个目录应当和 mod...
  • lvze0321
  • lvze0321
  • 2016-11-23 17:23
  • 1906

Django和Angular.js模板标签冲突的解决方式

参考文章:http://yanhua365.lofter.com/post/b417f_1f0361                   http://stackoverflow.com/questi...
  • dipolar
  • dipolar
  • 2013-07-09 11:21
  • 3493

Django 学习小组:博客开发实战第四周——标签云与文章归档

通过前四周的时间我们开发了一个简单的个人 Blog,教程地址:第一周:Django 学习小组:博客开发实战第一周教程 —— 编写博客的 Model 和首页面第二周:Django 学习小组:博客开发实战...
  • u014792107
  • u014792107
  • 2016-06-17 17:28
  • 780

django模板标签{% for %}的使用(含forloop用法)

在django模板标签中,{% for %} 标签用于迭代序列中的各个元素。 与 Python 的 for 语句类似,语法是 for X in Y ,其中 Y 是要迭代的序列, X 是单次循环中使用...
  • weixin_39198406
  • weixin_39198406
  • 2017-12-27 11:44
  • 44
    个人资料
    • 访问:127980次
    • 积分:1861
    • 等级:
    • 排名:千里之外
    • 原创:41篇
    • 转载:117篇
    • 译文:0篇
    • 评论:6条