反向教學系列之——Django入門(一)【不需知道web框架】

  用這東西最終是建網站的,或者是更一般意義的服務器。服務器麼,就是如果用別的電腦(“客戶機”)給它發請求,它會返回一些東西——如果給隨便某個機器發信息,它自然未必理你。要想某機器迴應你,得滿足這些條件——


  • 它不處在關機狀態

  • 它能收到你的信息,你也能收到它的信息

  • 它正在運行服務程序

  • 它運行的程序知道怎麼迴應你的請求


  第一點即開機,第二點是聯網(但這裏有點複雜),第三點和第四點要求一個程序,說白了就一 xxx.py,要求能夠接收到請求,並且一般返回一個包含html格式的字符串(不一定必須有一個對應的html文件)。而向瀏覽器地址欄輸入一條地址,就是一種(最普遍的)請求。

  這裏介紹的第一個Django功能,就是隻需給出地址和對應html,即可得到完整服務程序。但是,作爲框架,自然不會簡單到只要寫這倆,而是讓你在一個普通(故而略微複雜)的工程(一套文件)中,把你需要的東西寫在某些關鍵位置。作爲demo(演示),第一個例子是,僅請求服務器位置,返回 hello,步驟如下:

1.  安裝Django  ——  pip install Django 並將其bin目錄添加至環境變量


2.  建立一個名爲Hello的項目  ——  找一個地方打開命令行,django-admin.py startproject Hello  (此命令創建一個文件夾,包含固定內容)


3.  在最裏層打開urls.py(編輯模式),在最上方加入如下代碼(多行註釋不重要):

from django.http import HttpResponse
def hello(request):
    return HttpResponse("<h1>Hello</h1>")    # 收到請求時除了返回html,還可以做點別的,故把這些操作放進了函數


4.  把自帶的這一行:    (位於列表urlpatterns中,是一個元素)

path('admin/', admin.site.urls),

    改成這個:

url(r'^$', hello),    # ^$是對應空行的正則表達式,hello是觸發時要調用的函數

    【然後】再把這個:

from django.urls import path

    改成這個:

from django.conf.urls import url


5.  保存好修改,啓動服務程序  ——  在工程文件的第一層有個manage.py,但是爲了提供多個功能,它被安排爲不能直接打開。在此處打開命令行,python manage.py runserver 回車


6.  打開隨便某個瀏覽器,輸入“網址” 127.0.0.1 回車,如果看到Hello,那麼說明起作用了……


  第一篇完了。

(2018-3-5 於地球)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章