• 开始一个项目
    • 运行开发服务器

    开始一个项目

    一但你安装好了python,django和(可选的)数据库及相关库,你就可以通过创建一个project,迈出开发django应用的第一步。

    项目 是 Django 实例的一系列设置的集合,它包括数据库配置、Django 特定选项以及应用程序的特定设置。

    如果第一次使用 Django,必须进行一些初始化设置工作。 新建一个工作目录,例如 /home/username/djcode/ ,然后进入该目录。

    这个目录应该放哪儿?

    有过 PHP 编程背景的话,你可能习惯于将代码都放在 Web 服务器的文档根目录 (例如 /var/www 这样的地方)。 而在 Django 中,把任何Python代码和web server的文档根(root)放在一起并不是一个好主意。因为这样做有使人能通过网路看到你原代码的风险. 那就太糟了。

    把代码放置在文档根目录 之外 的某些目录中。

    转到你创建的目录,运行命令django-admin.py startproject mysite。这样会在你的当前目录下创建一个目录。mysite

    注意

    如果用的是 setup.py 工具安装的 Django , django-admin.py 应该已被加入了系统路径中。

    如果你使用一个trunk版本,你会在 djtrunk/django/bin 下发现 django-admin.py 。你将来会常用到django-admin.py,考虑把它加到你的系统路径中去比较好。 在Unix中, 你也可以用来自/usr/local/bin 的符号连接, 用一个命令, 诸如sudo ln -s /path/to/django/bin/django-admin.py /usr/local/bin/django-admin.py . 在Windows中, 你需要修改你的 PATH 环境变量.

    如果你的django是从linux发行版中安装的,那么,常会被django-admin.py替代。django-admin

    如果在运行时,你看到权限拒绝的提示,你应当修改这个文件的权限。django-admin.py startproject 为此, 键入 cd /usr/local/bin转到django-admin.py所在的目录,运行命令chmod +x django-admin.py

    startproject 命令创建一个目录,包含4个文件:

    1. mysite/
    2. __init__.py
    3. manage.py
    4. settings.py
    5. urls.py

    文件如下:

    • init.py :让 Python 把该目录当成一个开发包 (即一组模块)所需的文件。 这是一个空文件,一般你不需要修改它。

    • manage.py :一种命令行工具,允许你以多种方式与该 Django 项目进行交互。 键入python manage.py help,看一下它能做什么。 你应当不需要编辑这个文件;在这个目录下生成它纯是为了方便。

    • settings.py :该 Django 项目的设置或配置。 查看并理解这个文件中可用的设置类型及其默认值。

    • urls.py:Django项目的URL设置。 可视其为你的django网站的目录。 目前,它是空的。

    尽管这些的文件很小,但这些文件已经构成了一个可运行的Django应用。

    运行开发服务器

    为了安装后更多的体验,让我们运行一下django开发服务器看看我们的准系统。

    django开发服务是可用在开发期间的,一个内建的,轻量的web服务。 我们提供这个服务器是为了让你快速开发站点,也就是说在准备发布产品之前,无需进行产品级 Web 服务器(比如 Apache)的配置工作。 开发服务器监测你的代码并自动加载它,这样你会很容易修改代码而不用重启动服务。

    如果你还没启动服务器的话,请切换到你的项目目录里 (cd mysite ),运行下面的命令:

    1. python manage.py runserver

    你会看到些像这样的

    1. Validating models...
    2. 0 errors found.
    3. Django version 1.0, using settings 'mysite.settings'
    4. Development server is running at http://127.0.0.1:8000/
    5. Quit the server with CONTROL-C.

    这将会在端口8000启动一个本地服务器, 并且只能从你的这台电脑连接和访问。 既然服务器已经运行起来了,现在用网页浏览器访问 http://127.0.0.1:8000/ 。 你应该可以看到一个令人赏心悦目的淡蓝色Django欢迎页面。 它开始工作了。

    在进一步学习之前, 一个重要的,关于开发网络服务器的提示很值得一说。 虽然 django 自带的这个 web 服务器对于开发很方便,但是,千万不要在正式的应用布署环境中使用它。 在同一时间,该服务器只能可靠地处理一次单个请求,并且没有进行任何类型的安全审计。 发布站点前,请参阅第 20 章了解如何部署 Django 。

    更改这个 Development Server 的主机地址或端口

    默认情况下, runserver 命令在 8000 端口启动开发服务器,且仅监听本地连接。 要想要更改服务器端口的话,可将端口作为命令行参数传入:

    1. python manage.py runserver 8080

    通过指定一个 IP 地址,你可以告诉服务器–允许非本地连接访问。 如果你想和其他开发人员共享同一开发站点的话,该功能特别有用。 0.0.0.0 这个 IP 地址,告诉服务器去侦听任意的网络接口。

    1. python manage.py runserver 0.0.0.0:8000

    完成这些设置后,你本地网络中的其它计算机就可以在浏览器中访问你的 IP 地址了。比如: http://192.168.1.103:8000/ . (注意,你将需要校阅一下你的网络配置来决定你在本地网络中的IP 地址) Unix用户可以在命令提示符中输入ifconfig来获取以上信息。 使用Windows的用户,请尝试使用 ipconfig 命令。