tango with django ch7 MTV

来源:互联网 发布:比尔精英英语 知乎 编辑:程序博客网 时间:2024/06/06 01:39

workflow

Import Model to rango/views.py

from rango.models import Category, Page

Define view function in rango/views.py

def category(request, category_name_slug):    context_dict = {}    try:        category = Category.objects.get(slug=category_name_slug)        context_dict['category_name'] = category.name        pages = Page.objects.filter(category=category)        context_dict['pages'] = pages        context_dict['category'] = category    except Category.DoesNotExist:        pass    return render(request, 'rango/category.html', context_dict)

Append url in rango/urls.py

url(r'^category/(?P<category_name_slug>[\w\-]+)/$',       views.category, name='category'       ),

Create template file in project_dir/templates/rango/

Summary

django 的MTV模式
view是核心, 在url匹配完成之后,调用view中的view function , view function 通过引入models中的Model来从数据库中读取数据,然后进行逻辑处理,然后render(request, template_file, context_dict),将渲染后的响应返回给客户端。相比于MVC,django的view的作用类似于MVC中的C。

0 0
原创粉丝点击