python測試開發django(1)--開始Hello World!
前言
當你想走上測試開發之路,用python開發出一個web頁面的時候,需要找一個支援python語言的web框架。django框架有豐富的文件和學習資料,也是非常成熟的web開發框架,想學python開發的小夥伴,從django入手是一個不錯的選擇。本篇寫一個簡單的“hello world!”頁面,開始django之旅~
環境準備:
Python 3.7.0
django 3.0.6
pycharm
環境準備
django的環境安裝非常簡單,只需用pip安裝一個django庫就可以了,編輯器選擇pycharm
pip install django==3.0.6
檢視版本號:pip show django
安裝完之後在cmd檢查下是否能用
建立專案
先建一個工程,比如我的專案程式碼想放到D:\Python0811\jango_1205目錄下,然後新建一個Django project(即一個Django專案例項需要的設定項集合,包括資料庫配置、Django配置和引用程式配置。)
開啟命令列,cd到一個你想放置你程式碼的目錄,然後執行一下命令:
django-admin startproject helloworld
執行完之後,pycharm中開啟jango_1205,就可以看jango_1205工程目錄下多了以下層級檔案;
這些目錄和檔案的用處是:
最外層的:helloworld:專案的容器,可以隨便命名。
manage.py:一個讓你用各種方式管理Django專案的命令列工具。
helloworld/__init__.py:一個空檔案,告訴Python這個目錄應該被認為是一個python包。
helloworld/settings.py:Django專案的配置檔案。
helloworld/urls.py:Django專案的URL宣告,就像你網站的“目錄”。
helloworld/wsgi.py:作為你的專案的執行在WSGI相容的Web伺服器上的入口。
django-admin
django-admin.exe是一個可執行檔案,安裝django時候回預設安裝到python3\Scripts目錄下,相關指令用-h檢視
啟動服務
接下來啟動django服務,使用helloworld下的manage.py,先cd到D:\Python0811\jango_1205\helloworld目錄下,再在命令列輸入以下指令:
python manage.py runserver
啟動完成可以看到:Starting development server at http://127.0.0.1:8000/,複製地址在瀏覽器開啟;
django服務預設在8000埠啟動,如果想換個埠,可以輸入以下指令;
python manage.py runserver 8080
如果一個區域網另外一臺電腦也需要能訪問,可以監聽所有ip:
python manage.py runserver 0.0.0.0:8000
訪問的時候,用電腦ip代替127.0.0.1;
用於開發的伺服器在需要的情況下會對每一次的訪問請求重寫載入一遍python程式碼。所以你不需要為了讓修改的程式碼生效而頻繁的重新啟動伺服器。然而,一些動作,比如新增新檔案,將不會觸發自動重新載入,這時你得自己手動重啟伺服器。
檢視和URL配置
在先前建立的helloworld/helloworld目錄新建一個view.py檔案,並輸入程式碼
#helloworld/helloworld/view.py from django.http import HttpResponse def index(request): return HttpResponse("hello world! come on")
繫結URL與檢視函式。開啟urls.py檔案,刪除原來程式碼,將以下程式碼複製貼上到urls.py檔案中
#helloworld/helloworld/view.py from django.conf.urls import url from . import view urlpatterns=[ url(r'^$',view.index), ]
url函式
url()可以接收四個引數,分別是兩個必選引數:regex、view和兩個可選引數:kwargs、name。
def url(regex, view, kwargs=None, name=None): return re_path(regex, view, kwargs, name)
- regex:正則表示式,與之匹配的URL會執行對應的第二個引數view。
- view:用於執行與正則表示式匹配的URL請求。
- kwargs:檢視使用的字典型別的引數。
- name:用來反向獲取URL。
多個url設定
urlpatterns裡面url(r'^$',view.index)這項是開啟首頁http://127.0.0.1:8000,平常網站會有多個頁面,如果想加個頁面地址如:http://127.0.0.1:8000/hui開啟另外一個頁面。
view.py加個函式
#helloworld/helloworld/view.py from django.http import HttpResponse def index(request): return HttpResponse("hello world! come on") def hui(request): return HttpResponse("come on hui")
urls.py加個配置
#helloworld/helloworld/view.py from django.conf.urls import url from . import view urlpatterns=[ url('^$',view.index), url('^hui$',view.hui), ]
這樣在瀏覽器上輸入地址:http://127.0.0.1:8080/,開啟頁面出現:hello world! come on
在瀏覽器輸入地址:http://127.0.0.1:8080/hui,開啟頁面出現: come on hui