关于django:Django中如何建立mvc模式

29次阅读

共计 1316 个字符,预计需要花费 4 分钟才能阅读完成。

在之前的 java 里,咱们会频繁的提到 mvc 模式,置信大家曾经对这种模式有了初步的意识。同样的,在 Django 框架里也有着这类模式的应用,尽管在应用的细节上有所差异,不过其根本的原理还是不会变动太大的。上面咱们就 Django 中建设 mvc 模式的办法带来介绍,一起看看怎么用吧。

1、阐明

(1)models.py 文件次要用一个 Python 类来描绘数据表。称为模型 (model)。使用这个类(通过 Django 自带的 ORM 实现),你可能通过简略的 Python 的代码来创建、检索、更新、删除 数据库中的记录。

(2)views.py 文件蕴含了页面的业务逻辑,latest_books() 函数叫做视图。

(3)urls.py 指出了什么样的 URL 调用什么的视图。在这个例子中,/latest/URL 将会调用 latest_books() 这个函数。换句话说,假设你的域名是 example.com,任何人浏览 http://example.com/latest/ 将会调用 latest_books() 这个函数。

(4)latest_books.html 是 html 模板,它描绘了这个页面的设计是如何的。使用带基本逻辑申明的模板语言,如 {% for book in book_list %}。

2、实例

上面是一个简略的例子介绍 Django 中的 MVC(模型 - 视图 - 控制器)设计形式:

# models.py (the database tables)
 
from django.db import models
 
class Book(models.Model):
    name = models.CharField(max_length=50)
    pub_date = models.DateField()
 
 
# views.py (the business logic)
 
from django.shortcuts import render_to_response
from models import Book
 
def latest_books(request):
    book_list = Book.objects.order_by('-pub_date')[:10]
    return render_to_response('latest_books.html', {'book_list': book_list})
 
 
# urls.py (the URL configuration)
 
from django.conf.urls.defaults import *
import views
 
urlpatterns = patterns('',
    (r'^latest/$', views.latest_books),
)
 
 
# latest_books.html (the template)
 
<html><head><title>Books</title></head>
<body>
<h1>Books</h1>
<ul>
{% for book in book_list %}
<li>{{book.name}}</li>
{% endfor %}
</ul>
</body></html>

以上就是 Django 中建设 mvc 模式的办法,对于 mvc 模式还不太熟悉的,能够对这种模式做一个理解,而后在 Django 中对 mvc 模式的无关应用开展练习。

正文完
 0