2007-08-13
generic views 新掌握的一个方法;)--extra_context
关键字: generic views,django,python
今天要写一个程序的小模块---同一个网页里面,中间的内容区要显示所有的student,而在右侧边栏需要显示所有的class(班级;))
起初已经写完了显示所有student的代码了,用的就是generic views----太爽了,仅用了很少很少的代码。
newsList = {
'queryset': Student.objects.all(),
}
urlpatterns = patterns('',
(r'^$', 'django.views.generic.list_detail.object_list',dict(paginate_by=20, **newsList)),
)
note
:
paginate_by=20指每20个记录分页
默认的模版名字为 (你的app名称)_list.html,如你的app为stu,那么默认模版就为stu_list.html
接下来需求变更,要求我在同一页面显示class列表...
呵呵,因为我比较懒,所以一来我不想修改现有代码,二来不愿意重新写views中关于查询数据库然后传递到模版等代码。我想generic views一定已经解决了同时传多个字典的情况了。呵呵,果然:你只需添加extra_context就可以了--还是非常少的代码
newsList = {
'queryset': Student.objects.all(),
'extra_context': {'classes': Class.objects.all()},
}
urlpatterns = patterns('',
(r'^$', 'django.views.generic.list_detail.object_list',dict(paginate_by=20, **newsList)),
)
在模版里,你只需取classes的值就可以了,如:
{% for item in classes%}
{{ item.classes_name }}
{% endfor %}
起初已经写完了显示所有student的代码了,用的就是generic views----太爽了,仅用了很少很少的代码。
newsList = {
'queryset': Student.objects.all(),
}
urlpatterns = patterns('',
(r'^$', 'django.views.generic.list_detail.object_list',dict(paginate_by=20, **newsList)),
)
note
: paginate_by=20指每20个记录分页
默认的模版名字为 (你的app名称)_list.html,如你的app为stu,那么默认模版就为stu_list.html
接下来需求变更,要求我在同一页面显示class列表...
呵呵,因为我比较懒,所以一来我不想修改现有代码,二来不愿意重新写views中关于查询数据库然后传递到模版等代码。我想generic views一定已经解决了同时传多个字典的情况了。呵呵,果然:你只需添加extra_context就可以了--还是非常少的代码
newsList = {
'queryset': Student.objects.all(),
'extra_context': {'classes': Class.objects.all()},
}
urlpatterns = patterns('',
(r'^$', 'django.views.generic.list_detail.object_list',dict(paginate_by=20, **newsList)),
)
在模版里,你只需取classes的值就可以了,如:
{% for item in classes%}
{% endfor %}
发表评论
提醒: 该博客已发表在公共论坛,博客所有留言会成为论坛回贴,留言请注意遵守论坛发贴规则
- 浏览: 10225 次
- 性别:

- 来自: 北京

- 详细资料
搜索本博客
链接
最新评论
-
Flex创建一个UI component ...
我一般的习惯介绍怎么做,就来一段代码将,这样估计容易理解,不知道flex的程序员 ...
-- by javaeyename -
flex collection 的特征
呵呵,受教了。针对引用而非collection 作为dataprovider 时 ...
-- by yimogod -
flex collection 的特征
Array是As3的基本类型,不支持事件,所以无法进行数据绑定。Collecti ...
-- by ltian -
Flex创建一个UI component ...
这么一些清晰很多, 强烈要求LZ画个图出来!!
-- by bruce.peng -
pyamf小实例
设计是网上找素材改的功能还一直在写,暂时只是一个页面
-- by yimogod






评论排行榜