被解放的姜戈01 初試天涯

2022-04-10 21:58:31 字數 3352 閱讀 6429

本系類教程基本** 部分原創以下原創作者

向昆汀的致敬,「被解放的姜戈」

django意外的和昆汀的電影重名。這大大提高了django的知名度。另外利用電影,宣傳了這個奇怪的詞的發音。

下面是姜戈的初體驗。

博主採用了pycharm5.0.3 專業版 配合python3.4.3 django1.9.5 進行開發由於 原博主文章年代久遠(誇張一下)版本差別較大 故在實際操作(按原博主教程)過程中產生較多問題,so 博主學此文 救濟下後面的同學。

python 3.4.3 (版本最好一樣 現在最新貌似有3.5的 )

mysql (官網直接下最新的 博主是5.7.11)

一些擴充套件安裝(django ,pymsql 等 直接在pycharm 中裝)

黑夜中,姜戈和鐐銬說再見。

開啟pycharm  新建django專案 左側選擇(django)

檔案結構(博主第一次發文 不知道怎麼弄進來將就看吧 =  = )

專案名------

專案名----------

init

settings

urls

wsgi

migrations--------

init

init

admin

model

tests

views

templates

db.sqlite3

manage.py

開啟瀏覽器,訪問可以看到伺服器已經在執行:

雖然有乙個能跑的伺服器,但什麼內容都沒有。

「賞金?獵人?」 姜戈滿臉困惑。

在http協議中可以看到,網路伺服器是「請求-回應」的工作模式。客戶向url傳送請求,伺服器根據請求,開動後廚,並最終為客人上菜。django採用的mvc結構,即點單、廚房、儲藏室分離。

我們需要乙個指揮員,將url對應分配給某個物件處理,這需要在urls.py設定。python會根據該程式,將url請求分給某個廚師。

將urls.py修改為:

from django.conf.urls import  url

from django.contrib import admin

from scc import views

urlpatterns =[

url(r'^admin/', admin.site.urls),

url(r'^$', views.first_page),

]

我們新增了最後一行。它將根目錄的url分配給乙個物件進行處理,這個物件是scc.views.first_page。

用以處理http請求的這一物件還不存在,我們在views.py,在其中定義first_page函式:

return httpresponse("世界好

")第一行說明字元編碼為utf-8,為下面使用中文做準備。first_page函式的功能,是返回http回覆,即這裡的世界好

。first_page有乙個引數request,該引數包含有請求的具體資訊,比如請求的型別等,這裡並沒有用到。

頁面效果如下:

姜戈接過槍,一槍射出去。「天哪!」 德國人驚呆了。

'django.contrib.admin',

'django.contrib.auth',

'django.contrib.contenttypes',

'django.contrib.sessions',

'django.contrib.messages',

'django.contrib.staticfiles',

'scc',

)姜戈看到曾經的工頭們,眼中充滿怒火。

另一方面,為了去耦合,實現模組化,我們應該在scc/second_url.py中設定url訪問物件。具體如下:

在scc 目錄下新建 second_url 

首先,修改mysite/urls.py:

from django.conf.urls import  url,include

from django.contrib import admin

from scc import views

urlpatterns = [

url(r'^admin/', admin.site.urls),

url(r'^$', views.first_page),

url(r'^scc/', include('scc.second_url')),

]

second_url更改內容為:

from django.conf.urls import url,include

from django.contrib import admin

from scc import views

urlpatterns = [

url(r'^$',views.first_page_1),

]

將url對應scc下,views.py中的first_page_1函式。

最後,在scc下,修改views.py為:

return httpresponse("世界好

")訪問檢視效果。

「你們這些混蛋,我乙個都不會放過!」 姜戈大吼。

可以看到,django的建立過程非常簡單。但這只是初次嘗試django。為了建立乙個完整功能的**,還需要呼叫django許多其它的功能。

姜戈的解放,才剛剛開始。

歡迎閱讀「被解放的姜戈」系列文章。

被解放的姜戈01 初試天涯

向昆汀的致敬,被解放的姜戈 django意外的和昆汀的電影重名。這大大提高了django的知名度。另外利用電影,宣傳了這個奇怪的詞的發音。下面是姜戈的初體驗。啟動計算機中的python,嘗試載入django模組。如果可以成功載入,那麼說明django已經安裝好 import django print...

被解放的姜戈02 莊園疑雲

資料庫是一所大莊園,藏著各種寶貝。乙個沒有資料庫的 所能提供的功能會非常有限。為了找到心愛的人,姜戈決定一探這神秘的糖果莊園。連線資料庫 django為多種資料庫後台提供了統一的呼叫api。根據需求不同,django可以選擇不同的資料庫後台。mysql算是最常用的資料庫。我們這裡將django和my...

被解放的姜戈08 遠走高飛

之前在單機上實現了乙個django伺服器 被解放的姜戈07 馬不停蹄 現在我們可以把這個伺服器推上乙個雲平台。這裡我選擇使用阿里雲。看著復仇的火焰燃燒,姜戈露出得意的笑容。在阿里雲官網 aliyun.com 頁面註冊阿里雲賬號。登入後選擇雲伺服器ecs,並選擇 建立例項 選擇作業系統ubuntu 1...