Django一个可以是Web开发工作者开发工作愉快并且高效的Web 框架 . 使用Django , 使你能够以最小的代建构建和维护高质量的Web应用 .
从好的方面来看 , Web开发激动人心并且富有创造性 ; 从另一方面来看它却是繁琐而令人厌恶的工作 . 通过减少代码的重复开发 , Django使你能够专注于Web工作中有趣并且关键的东西 . 为了能够达到这个目标 , Django提供了通用的Web开发模式的高度抽象 , 提供了频繁进行编程开发的快速解决办法 , 以及 "如何解决问题" 提供了明确的约定 . 同时Django尝试着留下来了一些方法来让你根据需要在Framework之外来开发 .
本教程侧重于两方面 : 1 , 我们深度解释Django到底做了哪些工作以及如何用它构建Web应用 ; 第二 , 我们将会在适当的地方讨论更高级的概念 , 并且解释如何在自己的Django项目中高效的使用这些工具 . 通过阅读本教程 , 你将会快速开发功能强大网站的技巧 , 并且会让你的代码十分的清晰明了 , 易于维护 . 本书的代码清晰 , 易维护通过学习 , 可以快速开发功能强大的网站 .
框架是什么 ?
Django在新一代的Web框架中十分的出色 , 为什么这样说呢 ?
为了回答该问题 , 让我们考虑一下不使用框架设计Python网页应用程序的情形 。 贯穿本教程 , 我们多次展示不使用框架实现网站基本功能的方法 , 让读者认识到框架开发的方便 (不使用框架,更多的情况是没有合适的矿街可用 . 更重要的是理解实现了来龙去脉会使你成为一个优秀的web开发者 . )
使用Python开发web , 最简单 , 原始和直接的方法是使用CGI标准(不懂得移步CGI介绍) , 在1998年这种方式十分的流行 . 现在从应用角度解释它是如何工作的 : 首先是做一个Python脚本输出HTML代码 , 然后保存成 .cgi 扩展名的文件,通过浏览器访问此文件 。
如下所示 , 用Python CGI脚本显示数据库中最新出版的十本书 : 不用管训语法细节 ; 仅仅感觉一下基本实现的方法 。
#!/usr/bin/env python import MySQLdb print "Content-Type: text/html\n"
print "<html><head><title>Books</title></head>"
print "<body>"
print "<h1>Books</h1>"
print "<ul>" connection = MySQLdb.connect(user='me', passwd='letmein', db='my_db')
cursor = connection.cursor()
cursor.execute("SELECT name FROM books ORDER BY pub_date DESC LIMIT 10") for row in cursor.fetchall():
print "<li>%s</li>" % row[0] print "</ul>"
print "</body></html>" connection.close()