`
CandyL
  • 浏览: 18071 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

第二章:Django快速上手

阅读更多
The Django Book 第2章:Django快速上手

revised by xin_wang

谢天谢地,安装Django非常容易。因为Django可以运行在任何可以运行Python的环境中,所以可以以多种方式进行配置。
在本章我们将尝试覆盖几种常见的Django安装场景。

安装Python
Django是以100%纯Python代码写就,所以你需要安装Python,Django要求安装Python2.3或更高版本。
如果你使用Linux或者MacOSX,你可能已经安装了Python
在命令行或者终端下输入“python”,如果出现类似如下提示,表示Python已经安装好了:
Python 2.4.1 (#2, Mar 31 2005, 00:05:10)
[GCC 3.3 20030304 (Apple Computer, Inc. build 1666)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
否则,出现错误提示“command not found”
你可以到http://www.python.org/download/下载Python安装

安装Django
安装官方发布版本的Django
http://www.djangoproject.com/download/下载tarball的Django-*.tar.gz
Java代码 复制代码
  1. tar xzvf Django-*.tar.gz   
  2. cd Django-*   
  3. sudo python setup.py install  
tar xzvf Django-*.tar.gz
cd Django-*
sudo python setup.py install

Windows下安装则是直接解压Django-*.tar.gz并运行python setup.py install
安装完以后,在Python交互环境下应该可以import django模块
Java代码 复制代码
  1. >>> import django   
  2. >>> django.VERSION   
  3.  (10'official')  
>>> import django
>>> django.VERSION
 (1, 0, 'official')

Python交互环境是一个命令行程序,在命令行下运行“python”即可进入交互环境
在这本书里,我们将会演示一些Python代码例子,这些例子看起来像是在交互环境里面输入的。
Python交互环境的提示符是三个大于号(>>>)

从Subversion安装Django
如果你想安装Django最新代码或者你想向Django贡献代码,你应该从Django的Subversion repository安装
Subversion是一个与CVS类似的开源版本控制系统,Django团队使用它来管理Django代码的变化。
你可以随时使用Subversion客户端获取最新的Django源代码,或者更新你本机Subversion工作拷贝"local checkout"中的
Django代码来获得Django开发人员所作的最新修改和增强。
最新的Django开发代码称为“the trunk”
得到最新的Django trunk:
1,确认你安装了Subversion客户端,下载地址为http://subversion.tigris.org
Subverion的文档http://svnbook.redbean.com
2,运行如下命令得到trunk“svn co http://code.djangoproject.com/svn/django/trunk django_src”
3,符号链接django_src/django来让django在你的Python site-packages目录下,或者更新PYTHONPATH指定它
从Subversion安装不需要运行“python setup.py install”
Django trunk经常更新bug fixs和增加feature,你可能要频繁更新它
在django_src目录下运行“svn update”即可更新代码

建立数据库
Django仅有的先决条件就是安装Python,但是本书关注Django引以为傲的众多优点之一,开发支持数据库的Web站点
所以你需要安装一个数据库服务器来存储数据
如果你只是想浅尝辄止,可以跳过这一步直接开始一个项目,可是请相信我们:你最终还是会装一个数据库,因为本书的
所有例子都假设你已经拥有一个数据库
Django1.0支持5个数据库引擎:
PostgreSQL(http://www.postgresql.org/)
SQLite 3(http://www.sqlite.org/)
MySQL(http://www.mysql.com/)
Microsoft SQL Server(http://www.microsoft.com/sql/)
Oracle(http://www.oracle.com/database/)
我们自己特别喜欢PostgreSQL,所以我们最先提到它
尽管如此,所有的这些数据库都在Django上工作得都很好
SQLite也值得特别注意,它是一个非常简单的数据库引擎,不需要任何服务器安装和配置
如果你只是想玩玩Django的话,SQLite是最容易安装的

使用PostgrSQL来和Django工作
如果你用PostgreSQL,你需要psycopg包,从http://initd.org/projects/psycopg1可以得到
确认你使用版本1而不是版本2,2还是beta版
如果你在Windows上使用PostgreSQL,可以从如下地址下载已经编译好的二进制psycopg
http://stickpeople.com/projects/python/win-psycopg/

使用SQLite 3来和Django工作
你需要SQLite 3而不是SQLite 2,从http://initd.org/tracker/pysqlite下载pysqlite
确认下载pysqlite的版本为2.0.3及以上

使用MySQL来和Django工作
Django需要MySQL版本4.0及以上,3.x版本不支持事务、嵌套存储过程以及其它标准SQL语句
你也需要MySQLdb包,下载地址http://sourceforge.net/projects/mysql-python

使用MSSQL来和Django工作

使用Oracle来和Django工作

不使用数据库来和Django工作
就像刚刚提到的,Django实际上不需要数据库
如果你仅仅希望Django来提供动态网页而不触及数据库也是可以的
和Django绑定的一些额外的工具需要数据库,如果你选择不使用数据库,你会错失那些特性

开始一个项目
如果这是你第一次使用Django,你必须注意一些初始化过程
运行“django-admin.py startproject mysite”将会在你的当前目录下创建一个mysite目录
注意,如果你使用setup.py安装Django,django-admin.py应该在你的PATH系统变量下
如果不在PATH里面,你可以从site-packages/django/bin找到它
考虑符号链接它到你的PATH里面,例如/usr/local/bin
一个项目就是一个Django实例的设置的集合,包括数据库配置、Django的专有设置以及应用程序专有设置
让我们看看startproject创建了什么:
/mysite/
__init__.py
manage.py
settings.py
urls.py
这些文件的说明如下:
manage.py
一个命令行工具,可以让你以多种方式与Django项目交互
setting.py
Django项目的配置
urls.py
Django项目的URL定义
如果你使用PHP,你可能习惯于将代码放在Web服务器的document root下,如/var/www
使用Django的话不要这样做,将Python代码放在document root下不是一个好主意
因为这样的话人们可能从Web看到你的代码,这并不安全
把你的代码放在document root以外的目录,如/home/mycode

开发用服务器
切换到mysite目录,运行“python manage.py runserver”,你将看到如下信息
Validating models...
0 errors found.
Django version 1.0, using settings 'mysite.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
这样你就启动了Django开发用服务器,这是一个包含在Django中的开发阶段使用的轻量级Web服务器
我们在Django中包含了这个服务器是为了快速开发,这样在产品投入应用之前,就可以不用处理生产环境中
web server的配置工作了。
这个服务器查看你的代码,如果有改动,它自动reload,让你不需重启快速修改你的项目
虽然这个开发用服务器对于开发来说简直棒透了,还是请克制一下把它用在任何形式的生产环境中的冲动。
这个服务器一次只能可靠地处理一个请求,而且根本没有经过任何安全性的检验
如果你的站点需要上线,请参考第21章的关于部署Django程序的介绍
默认情况下runserver命令启动服务器的端口为8000,只监听本地连接
如果你希望改变端口,增加一个命令行参数即可
python manage.py runserver 8080
你也可以改变服务器监听的IP地址,当你同其它开发者分享一个开发站点时很有用
python manage.py runserver 0.0.0.0:8080
上面的命令使得Django监听任何网络接口,这样的话就允许其它计算机连接该服务器
试着访问http://127.0.0.1:8000/,你将会看到“Welcome to Django”的页面

下一步是什么?
我们已经安装好一切的东西并且让服务器运行了,让我们写一点基本代码来展示怎样使用Django提供动态页面
分享到:
评论

相关推荐

    two-scoops-of-django-1-11

    ##### 第二部分:进阶主题 - **第 4 章:模板系统**:深入讲解 Django 的模板系统,包括模板继承、上下文处理等内容。 - **第 5 章:表单与验证**:讨论表单的设计原则及其验证机制。 - **第 6 章:用户认证与权限...

    The Definitive Guide to Django 2nd Edition

    2. **第二章:模型层详解** - **模型定义**:讲解如何定义数据库模型,并通过ORM(对象关系映射)技术进行数据操作。 - **字段类型**:介绍了Django支持的各种字段类型及其用途。 3. **第三章:视图层解析** - **...

    The Django Book 2.0中文译本

    ##### 第二章:入门 - **章节概览**:本章为初学者提供了Django的基本安装步骤,并指导如何创建第一个Django项目。 - **关键知识点**: - **环境搭建**:包括Python环境的设置及Django的安装。 - **项目创建**:...

    Apress - Practical Django Projects 2nd Edition.pdf

    - **第二章至第五章:核心组件**:分别讲解了模型、视图、模板系统以及URL分发机制的核心原理和最佳实践。 - **第六章至第八章:高级主题**:涉及了Django的高级用法,如中间件的实现、静态文件处理、测试和调试技巧...

    Beginning Python Using Python2.6 and Python3.1

    ##### 第二部分:Python语言及标准库 - **第4章:做出决策**:讲解条件语句(if语句)的用法,以及如何根据条件执行不同的代码块。 - **第5章:函数**:介绍函数的概念、定义方法以及如何调用函数。还包括了函数...

    Apress.Practical.Django.Projects.2nd.Edition

    ### 实用Django项目:第二版 #### 一、书籍概览 《实用Django项目》第二版由James Bennett编写,该书旨在帮助读者更快地编写更好的Web应用程序,并教会他们如何构建自己的可重用代码库。本书适用于那些希望在...

    中文版django book Python web开发最佳指引

    第二章为读者提供了详细的入门指南,包括如何创建第一个Django项目、运行服务器、编写基本的视图函数和模板等内容。这一章对于新手来说非常重要,能够帮助他们快速上手Django开发。 ### 三、动态页面基础 第三章...

    The_Django_Book_2.0_中文版.pdf

    第二章到第十五章,内容涵盖了Django的入门知识、视图(View)和URL配置、模板(Template)技术、模型(Model)的定义和使用、站点管理、表单的处理、高级视图和URL配置、模板高级技巧、数据模型的高级操作、通用...

    tangowithdjango19-sample.pdf

    本书在第二章“准备开始Tango”中,详细介绍了学习Django所需的准备工作。这部分内容包括了对Python编程语言的概述,解释了Python包管理工具的作用,以及如何设置虚拟环境来隔离不同项目之间的依赖关系。此外,还...

    Python程序设计:快速编程入门 典型第1章 Python概述.pptx

    ### Python程序设计:快速编程入门 典型第1章 Python概述 #### Python简介 Python是一种高级编程语言,以其简洁明了的语法而闻名。对于非软件专业的初学者来说,Python的易学性使得它成为了一个理想的起点。与其他...

    django基于django的宠物医院管理系统的设计与实现论文.docx

    #### 第二章 系统开发工具 **2.1 Python 编程语言** Python是一种解释型、面向对象的高级程序设计语言,以其代码清晰简洁而著称。Python拥有丰富的第三方库支持,尤其在Web开发领域,Django框架就是其中非常受欢迎...

    基于web个人日志系统的设计与实现.pdf

    ### 第二章:系统分析 2.1 系统的基本功能描述 系统应具备日志创建、编辑、删除、分类、搜索、评论等基本功能,同时支持用户管理、权限控制、数据备份与恢复等辅助功能。 2.2 业务流程分析 业务流程可能包括用户...

    基于Django的鲜花预订购买管理系统论文(1)(1).docx

    #### 第二章 系统开发工具 ##### 2.1 Python 编程语言 Python 是一种广泛使用的高级编程语言,以其简洁清晰的语法著称。在Web开发领域,Python 拥有强大的生态支持,尤其是Django框架的出现,极大地简化了Web应用...

    深入理解Python中文版高清PDF.pdf

    #### 第二章:第一个Python程序 - **概览**:简要介绍了编写Python程序的基本流程,帮助读者建立起初步的认识。 - **函数声明**:详细解释了如何在Python中定义和使用函数,这是学习任何编程语言都必须掌握的基础...

    《Python 编程:从入门到实践》阅读计划

    ##### 第二部分(8—14章) - **重点内容**: - 函数的设计与使用。 - 文件操作与异常处理。 - 使用模块组织代码。 - **难点内容**: - 面向对象编程的基础知识。 - 单元测试的编写方法。 - 实战项目「外星人...

    Beginning Python:Using Python 2.6 and Python 3.1

    #### 二十、Django入门(第19章) - **Web框架基础**:介绍Web框架的概念及特点。 - **Django框架**:讲解如何使用Django框架开发Web应用程序。 #### 二十一、Web应用与服务(第20章) - **RESTful API**:介绍...

    Hello! Python.pdf

    第二章“Hunt the Wumpus”通过一个经典的游戏示例——Wumpus游戏,引导读者学习Python的基本语法和控制结构。通过构建游戏逻辑,读者可以学习到变量、条件语句、循环以及函数等基础概念。这一章不仅教授了编程基础...

    物业管理系统设计与实现.doc

    ### 第二章 系统分析 2.1 需求分析 - **系统需求分析**:系统应包括住户信息管理、缴费记录、投诉建议、公告发布等功能,同时支持数据统计和分析。 - **业务流程**:涵盖住户入住、退房、缴费、报修等关键环节,...

Global site tag (gtag.js) - Google Analytics