Django2 0的學習分享1

2021-08-22 19:23:43 字數 3378 閱讀 8903

本篇不能算是乙個原創的文件,只能說是在學習django官網文件過程中的筆記,留作以後參考使用。勿噴!

前言

關於如何安裝django這裡就不多敘述了,安裝過程比較簡單,這裡主要說一下安裝好django之後寫的第乙個應用。這裡使用的python是python3.7(64bit)的,django版本是2.0.7版本的。pc:win7 64bit

第一部分

1. 建立專案

在放置你**的目錄下,使用命令列執行如下命令:

django-admin.py  startproject mysite
mysite: 是專案的名字,你可以取任意你喜歡的名字(合法就行)

執行完後會在當前目錄下看到如下幾個檔案被建立了:

這些目錄和檔案的用處是:

最外層的:file: mysite/ 根目錄只是你專案的容器。

manage.py: 乙個讓你用各種方式管理 django 專案的命令列工具。

裡面一層的 mysite/ 目錄包含你的專案,它是乙個純 python 包。它的名字就是當你引用它內部任何東西時需要用到的 python 包名。 (比如 mysite.urls).

mysite/init.py:乙個空檔案,告訴 python 這個目錄應該被認為是乙個 python 包。

mysite/settings.py:django 專案的配置檔案。

mysite/urls.py:django 專案的 url 宣告,就像你**的「目錄」。

mysite/wsgi.py:作為你的專案的執行在 wsgi 相容的web伺服器上的入口。

2. 用於開發的簡易伺服器

進入到第一層mysite目錄下執行:

python manage.py runserver
會看到如下:

注意:

預設情況下,runserver 命令會將伺服器設定為監聽本機內部 ip 的 8000 埠。

如果你想更換伺服器的監聽埠,請使用命令列引數。舉個例子,下面的命令會使伺服器監聽 8080 埠:

python manage.py runserver 8080
如果你想要修改伺服器監聽的ip,在埠之前輸入新的。比如,為了監聽所有伺服器的公開ip(這你執行 vagrant 或想要向網路上的其它電腦展示你的成果時很有用),使用:

python

manage

.pyrunserver 0.0

.0.0

:8000

3 . 建立應用

現在你的開發環境——這個「專案」 ——已經配置好了,你可以開始幹活了。

在 django 中,每乙個應用都是乙個 python 包,並且遵循著相同的約定。django 自帶乙個工具,可以幫你生成應用的基礎目錄結構,這樣你就能專心寫**,而不是建立目錄了。

專案和應用有啥區別?應用是乙個專門做某件事的網路應用程式——比如部落格系統,或者公共記錄的資料庫,或者簡單的投票程式。專案則是乙個**使用的配置和應用的集合。專案可以包含很多個應用。應用可以被很多個專案使用。

建立乙個應用,應用名為polls:

這將會建立乙個polls目錄,目錄結構大致如下:

4 . 編寫第乙個檢視

開啟 polls/views.py,把下面這些 python **輸入進去:

這是 django 中最簡單的檢視。如果想看見效果,我們需要將乙個 url 對映到它——這就是我們需要 urlconf 的原因了。

為了建立 urlconf,請在 polls 目錄裡新建乙個 urls.py 檔案。當然也可以在頂層目錄中的urls.py中寫,但是為什麼還要在應用目錄下建乙個新的urls.py的檔案呢?這是為了應用更好的分離,繼續往下你就明白了。

在 polls/urls.py 中,輸入如下**:

from django.urls import path

from . import views

urlpatterns = [

path('', views.index, name='index'),

]

下一步是要在根 urlconf 檔案中指定我們建立的 polls.urls 模組。在 mysite/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),

]

函式 include() 允許引用其它 urlconfs。每當 django 遇到 :func:~django.urls.include 時,它會截斷與此項匹配的 url 的部分,並將剩餘的字串傳送到 urlconf 以供進一步處理。在2.0之前的版本是沒有include()函式的。

設計 include() 的理念是使其可以即插即用。因為投票應用有它自己的 urlconf( polls/urls.py ),他們能夠被放在 「/polls/」 , 「/fun_polls/」 ,」/content/polls/」,或者其他任何路徑下,這個應用都能夠正常工作。當包括其它 url 模式時你應該總是使用 include() , admin.site.urls 是唯一例外。

之後你就可以執行了,

python manage.py runserver
用你的瀏覽器訪問 http://localhost:8000/polls/,你應該能夠看見 「hello, world. you』re at the polls index.」 ,這是你在 index 檢視中定義的。

Django2 0學習筆記(一)

基於python的一款有截止日期,給完美主義者使用的web框架。優點 開發速度快 令人放心的安全 可拓展性強。注意 python和django版本的對應。這裡用的是python3.6和django2.0。1 在桌面建乙個資料夾 test 在命令列輸入 django admin startprojec...

Django 2 0實戰 部落格系統1

需求列表 1 使用者端部分 部落格需要提供搜尋功能,搜尋範圍限定在標題 分類和標籤上 部落格每天的增量資料為10 篇文章。能夠根據某個分類檢視所有關於這一分類的文章,分類沒有層級的關係,只有一級分類 一篇文章只能屬於乙個分類 訪問首頁時,需要能看到由新到舊的文章列表,以便於檢視最新的文章 作者可以設...

Django教程 Django 2 0入門

django是乙個千篇一律的python web框架,受ruby on rails的啟發,並使用許多相同的隱喻使web開發變得輕鬆快捷。django滿載且靈活,已成為python使用最廣泛的web框架之一。django實際上包含了構建任何大小的web應用程式所需的所有內容,並且它的普及使得查詢示例和...