Django入門(mén)指導(dǎo)

1,安裝python包管理工具pip

在ubuntu環(huán)境下,我們通常apt-get來(lái)安裝軟件,當(dāng)時(shí)pip是專(zhuān)門(mén)用來(lái)管理python包的工具,相對(duì)apt-get來(lái)說(shuō),安裝與python有關(guān)的包更加方便,能夠精確控制安裝軟件的版本,同時(shí),當(dāng)我們直接拿到別人的django工程時(shí),如果有一些依賴的包,能夠很快的使用pip解決依賴關(guān)系,pip之于python,npm之于node.js。
安裝pip工具

 sudo apt-get install python-pip

2,安裝django

通過(guò)第一步中pip工具,來(lái)安裝django,有時(shí)我們下指定安裝某個(gè)版本
sudo pip install Django==1.7.1
當(dāng)然也可以直接通過(guò)apt-get來(lái)安裝django
sudo apt-get install Django (不推薦)
當(dāng)然也可以通過(guò)源碼安裝(耗時(shí)耗力,不推薦)
python命令行下檢驗(yàn)是否安裝成功

>>> import django
>>> django.VERSION
(1, 7, 1, 'final', 0)

3,新建django工程

django-admin startproject website 或者
django-admin.py startproject website
通過(guò)Linux源碼安裝或者pip安裝django時(shí),django-admin有可能用不了,推薦用django-admin.py
執(zhí)行完上述命令,會(huì)在當(dāng)前目錄新建website工程,目錄結(jié)構(gòu)如下

fage:Server$ tree website
website
├── manage.py
└── website
    ├── __init__.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py
1 directory, 5 files

新建一個(gè)website目錄,還有website子目錄,還有四個(gè)py文件
manage.py: ---------Django項(xiàng)目里面的命令行工具,用于跟項(xiàng)目的各種交互,通過(guò)它可以調(diào)用django shell和數(shù)據(jù)庫(kù)
init.py: -------一個(gè)空文件讓Python知道這個(gè)目錄是一個(gè)Python包
settings.py -------- 包含了項(xiàng)目的默認(rèn)設(shè)置,包括數(shù)據(jù)庫(kù)信息,調(diào)試標(biāo)志,時(shí)區(qū),靜態(tài)文件目錄
urls.py ----- 負(fù)責(zé)把URL模式映射到應(yīng)用程序,建立網(wǎng)址和視圖函數(shù)之間的對(duì)應(yīng)關(guān)系
wsgi.py ----- 負(fù)責(zé)和Nginx或者Apache交互用的,當(dāng)使用django自帶的web服務(wù)器時(shí)不用理會(huì)。
manage.py文件,我們會(huì)經(jīng)常用到,但是我們基本不會(huì)改里面的內(nèi)容,只是用來(lái)啟動(dòng)web服務(wù),同步數(shù)據(jù)庫(kù)等等
init.py基本不用關(guān)注
settings.py文件是我們經(jīng)常需要修改的文件
urls.py也是我們經(jīng)常需要修改的文件
wsgi.py當(dāng)你把django部署在生產(chǎn)環(huán)境,用django自帶的web服務(wù)器就不是很合適,這個(gè)時(shí)候我們需要部署Nginx或者Apache,此時(shí)需要設(shè)置wsgi.py

4,新建app

python manage.py startapp blog
fage:website$ tree
.
├── blog
│   ├── admin.py
│   ├── __init__.py
│   ├── migrations
│   │   └── __init__.py
│   ├── models.py
│   ├── tests.py
│   └── views.py
├── manage.py
└── website
    ├── __init__.py
    ├── __init__.pyc
    ├── settings.py
    ├── settings.pyc
    ├── urls.py
    └── wsgi.py

5,修改settings.py

添加app到 settings.py

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'blog',
)

設(shè)置語(yǔ)言和時(shí)區(qū)

LANGUAGE_CODE = 'zh-CN'
TIME_ZONE = 'Asia/Shanghai'
  • zh-CN是為了django能夠顯示中文
  • Asia/Shanghai是將時(shí)區(qū)設(shè)置為本地時(shí)區(qū)

6,修改urls.py

設(shè)置urls.py有兩種方式

  • 6.1直接在website的urls.py中設(shè)置
from django.conf.urls import patterns, include, url
from django.contrib import admin
urlpatterns = patterns('',
    # Examples:
    # url(r'^$', 'my0813.views.home', name='home'),
    # url(r'^blog/', include('blog.urls')),

    url(r'^admin/', include(admin.site.urls)),
    url(r'^blog/$', 'blog.views.blog_index', name='blog_index'),
) 
  • 6.2通過(guò)website的urls.py和blog應(yīng)用中的urls.py
    設(shè)置website的urls.py
from django.conf.urls import patterns, include, url
from django.contrib import admin
urlpatterns = patterns('',
    # Examples:
    # url(r'^$', 'my0813_01.views.home', name='home'),
    # url(r'^blog/', include('blog.urls')),

    url(r'^admin/', include(admin.site.urls)),
    url(r'^blog/',  include('blog.urls')),#blog.urls的''不能省略
)

在blog目錄新建urls.py,編輯urls.py

from django.conf.urls import patterns, url
urlpatterns = patterns('',
    # Examples:
    # url(r'^$', 'my0813_02.views.home', name='home'),
    # url(r'^blog/', include('blog.urls')),
    url(r'^$', 'blog.views.blog_index'),#$符號(hào)之后不要加/
)

7,編輯視圖文件

編輯blog目錄下的views.py文件

from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.i
def blog_index(request):
    return HttpResponse("Hello, world.")

8,運(yùn)行web服務(wù)

因?yàn)闆](méi)有設(shè)置從html文件中獲取數(shù)據(jù), 就沒(méi)有設(shè)置Templates目錄和static目錄,只是為了簡(jiǎn)單地顯示一個(gè)hello world

  • 8.1本地運(yùn)行
    只能在本機(jī)訪問(wèn)
python manage.py runserver 8000
  • 8.2遠(yuǎn)端訪問(wèn)
python manage.py runserver 0.0.0.0:8000
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,106評(píng)論 6 542
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,441評(píng)論 3 429
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事。” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 178,211評(píng)論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 63,736評(píng)論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 72,475評(píng)論 6 412
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 55,834評(píng)論 1 328
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,829評(píng)論 3 446
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 43,009評(píng)論 0 290
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,559評(píng)論 1 335
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 41,306評(píng)論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,516評(píng)論 1 374
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,038評(píng)論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,728評(píng)論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 35,132評(píng)論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 36,443評(píng)論 1 295
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 52,249評(píng)論 3 399
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,484評(píng)論 2 379

推薦閱讀更多精彩內(nèi)容