Latest web development tutorials

Django 創建第一個項目

本章我們將介紹Django 管理工具及如何使用Django 來創建項目,第一個項目我們以HelloWorld 來命令項目。


Django 管理工具

安裝Django 之後,您現在應該已經有了可用的管理工具django-admin.py。 我們可以使用django-admin.py 來創建一個項目:

我們可以來看下django-admin.py的命令介紹:

[root@solar ~]# django-admin.py
Usage: django-admin.py subcommand [options] [args]

Options:
  -v VERBOSITY, --verbosity=VERBOSITY
                        Verbosity level; 0=minimal output, 1=normal output,
                        2=verbose output, 3=very verbose output
  --settings=SETTINGS   The Python path to a settings module, e.g.
                        "myproject.settings.main". If this isn't provided, the
                        DJANGO_SETTINGS_MODULE environment variable will be
                        used.
  --pythonpath=PYTHONPATH
                        A directory to add to the Python path, e.g.
                        "/home/djangoprojects/myproject".
  --traceback           Raise on exception
  --version             show program's version number and exit
  -h, --help            show this help message and exit

Type 'django-admin.py help <subcommand>' for help on a specific subcommand.

Available subcommands:

[django]
    check
    cleanup
    compilemessages
    createcachetable
……省略部分……

創建第一個項目

使用django-admin.py 來創建HelloWorld 項目:

django-admin.py startproject HelloWorld

創建完成後我們可以查看下項目的目錄結構:

[root@solar ~]# cd HelloWorld/
[root@solar HelloWorld]# tree
.
|-- HelloWorld
|   |-- __init__.py
|   |-- settings.py
|   |-- urls.py
|   `-- wsgi.py
`-- manage.py

目錄說明:

  • HelloWorld:項目的容器。
  • manage.py:一個實用的命令行工具,可讓你以各種方式與該Django項目進行交互。
  • HelloWorld/__init__.py:一個空文件,告訴Python該目錄是一個Python包。
  • HelloWorld/settings.py:該Django項目的設置/配置。
  • HelloWorld/urls.py:該Django項目的URL聲明;一份由Django驅動的網站"目錄"。
  • HelloWorld/wsgi.py:一個WSGI兼容的Web服務器的入口,以便運行你的項目。

接下來我們進入HelloWorld 目錄輸入以下命令,啟動服務器:

python manage.py runserver 0.0.0.0:8000

0.0.0.0讓其它電腦可連接到開發服務器,8000為端口號。 如果不說明,那麼端口號默認為8000。

在瀏覽器輸入你服務器的ip及端口號,如果正常啟動,輸出結果如下:

python

視圖和URL 配置

在先前創建的HelloWorld 目錄下的HelloWorld 目錄新建一個view.py 文件,並輸入代碼:

from django.http import HttpResponse

def hello(request):
	return HttpResponse("Hello world ! ")

接著,綁定URL 與視圖函數。 打開urls.py 文件,刪除原來代碼,將以下代碼複製粘貼到urls.py 文件中:

from django.conf.urls import *
from HelloWorld.view import hello

urlpatterns = patterns("",
	('^hello/$', hello),
)

整個目錄結構如下:

[root@solar HelloWorld]# tree
.
|-- HelloWorld
|   |-- __init__.py
|   |-- __init__.pyc
|   |-- settings.py
|   |-- settings.pyc
|   |-- urls.py              # url 配置
|   |-- urls.pyc
|   |-- view.py              # 添加的视图文件
|   |-- view.pyc             # 编译后的视图文件
|   |-- wsgi.py
|   `-- wsgi.pyc
`-- manage.py

完成後,啟動Django 開發服務器,並在瀏覽器訪問打開瀏覽器並訪問:

python-helloworld

注意:項目中如果代碼有改動,服務器會自動監測代碼的改動並自動重新載入,所以如果你已經啟動了服務器則不需手動重啟。