发布于2019-08-22 15:54 阅读(1184) 评论(0) 点赞(13) 收藏(5)
让我们来研究一个简单的例子,通过该实例,你可以分辨出,通过Web框架来实现的功能与之前的方式有何不同。 下面就是通过使用Django来完成以上功能的例子: 首先,我们分成4个Python的文件,(models.py , views.py , urls.py ) 和html模板文件 (latest_books.html )。
models.py:
# 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)
1 2 3 4 5 6 7 8 | # 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)
1 2 3 4 5 6 7 8 | # 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)
1 2 3 4 5 6 7 8 9 10 11 | # 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> |
不用关心语法细节,只要用心感觉整体的设计。 这里只关注分割后的几个文件:
小结:结合起来,这些部分松散遵循的模式称为模型-视图-控制器(MVC)。 简单的说, MVC是一种软件开发的方法,它把代码的定义和数据访问的方法(模型)与请求逻辑 (控制器)还有用户接口(视图)分开来。
这种设计模式关键的优势在于各种组件都是 松散结合 的。这样,每个由 Django驱动 的Web应用都有着明确的目的,并且可独立更改而不影响到其它的部分。 比如,开发者 更改一个应用程序中的 URL 而不用影响到这个程序底层的实现。 设计师可以改变 HTML 页面 的样式而不用接触 Python 代码。 数据库管理员可以重新命名数据表并且只需更改一个地方,无需从一大堆文件中进行查找和替换。
作者:bnggo
链接:https://www.pythonheidong.com/blog/article/52646/762eb6ff88be2b6afac1/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!