python测试开发django-1.开始hello world!
前言
當(dāng)你想走上測(cè)試開發(fā)之路,用python開發(fā)出一個(gè)web頁(yè)面的時(shí)候,需要找一個(gè)支持python語言的web框架。django框架有豐富的文檔和學(xué)習(xí)資料,也是非常成熟的web開發(fā)框架,想學(xué)python開發(fā)的小伙伴,從django入手是一個(gè)不錯(cuò)的選擇。本篇寫一個(gè)簡(jiǎn)單的“hello world! ”頁(yè)面,開始django之旅~
環(huán)境準(zhǔn)備:
Python 3.6.0
django 2.1.2
pycharm
環(huán)境準(zhǔn)備
django的環(huán)境安裝非常簡(jiǎn)單,只需用pip安裝一個(gè)django庫(kù)就可以了,編輯器選擇pycharm
pip install django
查看版本號(hào):pip show django
C:\Users\dell>pip show django Name: Django Version: 2.1.2 Summary: A high-level Python Web framework that encourages rapid development and clean, pragmatic design. Home-page: https://www.djangoproject.com/ Author: Django Software Foundation Author-email: foundation@djangoproject.com License: BSD Location: e:\python36\lib\site-packages Requires: pytz Required-by:安裝完之后在cmd檢查下是否能用
C:\Users\dell>python Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> import django >>> print(django.get_version()) 2.1.2 >>>創(chuàng)建項(xiàng)目
先建一個(gè)工程,比如我的項(xiàng)目代碼想放到E:\web_djo目錄下,然后新建一個(gè)Django project( 即一個(gè) Django 項(xiàng)目實(shí)例需要的設(shè)置項(xiàng)集合,包括數(shù)據(jù)庫(kù)配置、Django 配置和應(yīng)用程序配置。)
打開命令行,cd 到一個(gè)你想放置你代碼的目錄,然后運(yùn)行以下命令:
django-admin startproject helloworld
執(zhí)行完之后打開pycharm就可以看到web_djo工程目錄下多了以下層級(jí)文件
─helloworld│ manage.py│ └─helloworldsettings.pyurls.pywsgi.py__init__.py這些目錄和文件的用處是:
- 最外層的:helloworld: 項(xiàng)目的容器,可以隨便命名。
- manage.py: 一個(gè)讓你用各種方式管理 Django 項(xiàng)目的命令行工具。
- helloworld/__init__.py:一個(gè)空文件,告訴 Python 這個(gè)目錄應(yīng)該被認(rèn)為是一個(gè) Python 包。
- helloworld/settings.py:Django 項(xiàng)目的配置文件。
- helloworld/urls.py:Django 項(xiàng)目的 URL 聲明,就像你網(wǎng)站的“目錄”。
- helloworld/wsgi.py:作為你的項(xiàng)目的運(yùn)行在 WSGI 兼容的Web服務(wù)器上的入口。
django-admin
django-admin.exe是一個(gè)可執(zhí)行文件,安裝django時(shí)候會(huì)默認(rèn)安裝到python3\Scripts目錄下,相關(guān)指令用-h查看
E:\python36\Scripts>django-admin -hType 'django-admin help <subcommand>' for help on a specific subcommand.Available subcommands:[django]checkcompilemessagescreatecachetabledbshelldiffsettingsdumpdataflushinspectdbloaddatamakemessagesmakemigrationsmigraterunserversendtestemailshellshowmigrationssqlflushsqlmigratesqlsequenceresetsquashmigrationsstartappstartprojecttesttestserver Note that only Django core commands are listed as settings are not properly configured (error: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.).啟動(dòng)服務(wù)
接下來啟動(dòng)django服務(wù),使用helloworld下的manage.py,先cd到web_djo/helloworld目錄下,到在命令行輸入以下指令:
python manage.py runserver
E:\web_djo\helloworld>python manage.py runserver Performing system checks...System check identified no issues (0 silenced).You have 15 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions. Run 'python manage.py migrate' to apply them. October 23, 2018 - 21:09:39 Django version 2.1.2, using settings 'helloworld.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CTRL-BREAK.啟動(dòng)完只看看到這句:Starting development server at http://127.0.0.1:8000/,復(fù)制地址在瀏覽器打開
django服務(wù)默認(rèn)在8000端口啟動(dòng),如果想換個(gè)端口,可以輸入以下指令
python manage.py runserver 8080
如果一個(gè)局域網(wǎng)另外一臺(tái)電腦也需要能訪問,可以監(jiān)聽所有ip:python manage.py runserver 0.0.0.0:8000,訪問的時(shí)候用電腦ip代替127.0.0.1
用于開發(fā)的服務(wù)器在需要的情況下會(huì)對(duì)每一次的訪問請(qǐng)求重新載入一遍 Python 代碼。所以你不需要為了讓修改的代碼生效而頻繁的重新啟動(dòng)服務(wù)器。然而,一些動(dòng)作,比如添加新文件,將不會(huì)觸發(fā)自動(dòng)重新加載,這時(shí)你得自己手動(dòng)重啟服務(wù)器。
視圖和URL配置
在先前創(chuàng)建的helloworld/helloworld目錄新建一個(gè) view.py 文件,并輸入代碼
# helloworld/helloworld/view.py from django.http import HttpResponsedef index(request):return HttpResponse("Hello world ! django ~~")綁定URL與視圖函數(shù)。打開 urls.py 文件,刪除原來代碼,將以下代碼復(fù)制粘貼到 urls.py 文件中
# helloworld/helloworld/urls.py from django.conf.urls import url from . import viewurlpatterns = [url(r'^$', view.index), ]url函數(shù)
url() 可以接收四個(gè)參數(shù),分別是兩個(gè)必選參數(shù):regex、view 和兩個(gè)可選參數(shù):kwargs、name.
def url(regex, view, kwargs=None, name=None):return re_path(regex, view, kwargs, name)-
regex: 正則表達(dá)式,與之匹配的 URL 會(huì)執(zhí)行對(duì)應(yīng)的第二個(gè)參數(shù) view。
-
view: 用于執(zhí)行與正則表達(dá)式匹配的 URL 請(qǐng)求。
-
kwargs: 視圖使用的字典類型的參數(shù)。
-
name: 用來反向獲取 URL。
多個(gè)url設(shè)置
urlpatterns里面url(r'^$', view.index)這項(xiàng)是打開首頁(yè)http://127.0.0.1:8000,平常網(wǎng)站會(huì)有多個(gè)頁(yè)面,如果想加個(gè)頁(yè)面地址如:http://127.0.0.1:8000/yoyo打開另外一個(gè)頁(yè)面.
view.py加個(gè)函數(shù)
from django.http import HttpResponsedef index(request):return HttpResponse("Hello world ! django ~~ ")def yoyo(request):return HttpResponse("yoyo! django ~~ ")urls.py加個(gè)配置
from django.conf.urls import url from . import viewurlpatterns = [url('^$', view.index),url('^yoyo$', view.yoyo), ]這樣在瀏覽器上輸入地址:http://127.0.0.1:8000/,打開頁(yè)面出現(xiàn):Hello world ! django ~~
在瀏覽器輸入地址:http://127.0.0.1:8000/yoyo, 打開頁(yè)面出現(xiàn):yoyo! django ~~
關(guān)于regex正則表達(dá)式用法可以參考菜鳥教程http://www.runoob.com/regexp/regexp-tutorial.html
轉(zhuǎn)載于:https://www.cnblogs.com/xuxuchao/p/10402254.html
總結(jié)
以上是生活随笔為你收集整理的python测试开发django-1.开始hello world!的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: .Net Core添加分布式Sessio
- 下一篇: explian执行计划