python 的 django 框架的安裝教程很多,這里不列舉安裝過程,直接開始記開發應用過程。
1 startprojec,新建項目
$ django-admin.py startproject project_name
生成一個與 project_name 同名的項目目錄,項目目錄文件如下:
$ ls project_name project_name manage.py $ ls project_name/project_name __init__.py settings.py urls.py wsgi.py
project_name/project_name 中的 __init__.py 表名此項目是一個包。
通常 settings.py 中,國內時區設置為 'Asia/Shanghai',語言設置為 'zh-cn'。(注意,使用中文時需要將文件編碼設置為 utf8)
settings.py :在 INSTALLED_APPS 中添加 'blog', 作測試。
urls.py:在 urlpatterns 中添加如下項(line 17)作測試,blog.views.index 映射視圖處理函數。
1 from django.conf.urls import patterns, include, url 2 3 # Uncomment the next two lines to enable the admin: 4 # from django.contrib import admin 5 # admin.autodiscover() 6 7 urlpatterns = patterns('', 8 # Examples: 9 # url(r'^$', 'csvt01.views.home', name='home'), 10 # url(r'^csvt01/', include('csvt01.foo.urls')), 11 12 # Uncomment the admin/doc line below to enable admin documentation: 13 # url(r'^admin/doc/', include('django.contrib.admindocs.urls')), 14 15 # Uncomment the next line to enable the admin: 16 # url(r'^admin/', include(admin.site.urls)), 17 url(r'^blog/index/$', 'blog.views.index'), 18 )
2 startapp,新建應用
$ cd project_name $ django-admin.py startapp blog
project_name/blog 目錄下初始包含 __init__.py , models.py , tests.py , views.py 四個文件。
models.py 是模型文件,包含 database 操作等模塊,views.py 是視圖文件。
blog/views.py 中定義 index 方法作測試:
from django.http import HttpResponse def index(req): return HttpResponse('<h1>Welcome to Django !</h1>')
3 runserver,運行
$ python manage.py validate # 驗證配置
$ python manage.py runserver # 啟動服務器
4 訪問 127.0.0.1:8000/blog/index 測試頁面。
2015-2-14 補充:
project 與 app 的區別
* app 一般是網站中相對獨立的部分, 如 news 和 blogs 就是不同的 app。
* 可以去 Django 的標准庫 django.contrib 包中參考,其中的應用相對獨立。
* 從運維的角度看,不同的 app 代表不同的配置段,可以連接不同的數據庫,占用不同的進程,不一樣的 IP 地址和服務器。