Django note.1 web框架

Django web框架(學習筆記)


建立項目

在cd到代碼目錄運行命令:python

django-admin startproject testappweb

建立testapp目錄 同時會建立出如下文件:正則表達式

testapp/
    manage.py
    testapp/
        __init__.py
        settings.py
        urls.py
        wsgi.py
  • manage.py:用各類方式管理Django 項目的命令行工具。
  • **tesyapp/**目錄包含該項目,一個純 Python 包。
  • tesyapp/init.py:一個空文件,告訴 Python 這個目錄應該被認爲是一個 Python 包。
  • tesyapp/settings.py:Django 項目的配置文件。
  • tesyapp/urls.py:Django 項目的 URL 聲明,就像你網站的「目錄」.
  • tesyapp/wsgi.py:做爲你的項目的運行在 WSGI 兼容的Web服務器上的入口.

用於開發的簡易服務器

啓動了Django自帶的用於開發的簡易服務器,一個純Python寫的輕量級的web服務器。內置在Django中,爲了能快速的開發想要的東西,無需配置生成級別的服務器。可是也只用於開發設計而非web服務器。django

更換端口、IP瀏覽器

默認狀況下,runserver 命令會將服務器設置爲監聽本機內部 IP 的 8000 端口,服務器

python manage.py runserver 8080app

能夠用於更改監聽端口到8080。 若是修改監聽IP,在端口前添加IP,框架

python manage.py runserver 0:8000函數

0是0.0.0.0簡寫。工具


建立投票應用

每個應用都是一個python包。Django自帶一個工具,能夠生成應用的基礎目錄結構。 處於manage.py所在的目錄下,而後運行這行命令來建立一個應用:

python manage.py startapp polls

這將會建立一個 polls 目錄,它的目錄結構大體以下:

polls/
    __init__.py
    admin.py
    apps.py
    migrations/
        __init__.py
    models.py
    tests.py
    views.py

這個目錄包括了投票應用的所有內容


編寫第一個視圖

打開polls/views.py,輸入:

from django.http import HttpResponse
def index(request):
    return HttpResponse("Hello, world. You're at the polls index.")

若是須要看見效果,須要url映射,建立URLconf,在polls目錄中新建一個urls.py。 在urls.py輸入:

from django.urls import path
from . import views
urlpatterns = [
    path('', views.index, name='index'),
]

在根URLconf文件中指定建立的polls.urls模塊。在testapp/urls.py文件的urlpatterns列表裏插入一個include(),以下:

from django.contrib import admin
from django.urls import include,path
urlpatterns = [
    path('polls/',include('polls.urls')),
    path('admin/',admin.site.urls),
]

驗證是否正常,運行:

python mange.py runserver

瀏覽器訪問http://127.0.0.1:8000/polls/ ,就能看見 "Hello, world. You're at the polls index."


path()參數:route

route 匹配URL準則,相似正則表達式。當Django響應一個請求時,會從urlpatterns第一項開始,按順序依次匹配列表中的項,直到找到匹配項。 這些準則不會匹配 GET 和 POST 參數或域名。例如,URLconf在處理請求 https://www.example.com/myapp/ 時,它會嘗試匹配myapp/。處理請求 https://www.example.com/myapp/?page=3 時,也只會嘗試匹配 myapp/


path()參數:view

當 Django 找到了一個匹配的準則,就會調用這個特定的視圖函數,並傳入一個HttpRequest對象做爲第一個參數,被「捕獲」的參數以關鍵字參數的形式傳入。


path()參數:kwargs

任意個關鍵字參數能夠做爲一個字典傳遞給目標視圖函數。本教程中不會使用這一特性。


path()參數:name

爲你的 URL 取名能使你在 Django 的任意地方惟一地引用它,尤爲是在模板中。這個有用的特性容許你只改一個文件就能全局地修改某個URL模式。

相關文章
相關標籤/搜索