我們假定你已經(jīng)閱讀了?安裝 Django。你能知道 Django 已被安裝,且安裝的是哪個版本,通過在命令提示行輸入命令
cmd黑窗口運行,不懂cmd百度一下
python -m django --version
如果沒出現(xiàn)版本,就是沒安裝,那么用pip安裝一下
python -m pip install Django
創(chuàng)建項目?
如果這是你第一次使用 Django 的話,你需要一些初始化設(shè)置。也就是說,你需要用一些自動生成的代碼配置一個 Django?project?—— 即一個 Django 項目實例需要的設(shè)置項集合,包括數(shù)據(jù)庫配置、Django 配置和應(yīng)用程序配置。
打開命令行,cd
?到一個你想放置你代碼的目錄,然后運行以下命令:
mysite代表項目名,可以自己更改,都是在cmd黑窗口運行
django-admin startproject mysite
這行代碼將會在當(dāng)前目錄下創(chuàng)建一個?mysite
?目錄
- 最外層的?
mysite/
?根目錄只是你項目的容器, 根目錄名稱對 Django 沒有影響,你可以將它重命名為任何你喜歡的名稱。 -
manage.py
: 一個讓你用各種方式管理 Django 項目的命令行工具。你可以閱讀?django-admin 和 manage.py?獲取所有?manage.py
?的細(xì)節(jié)。 - 里面一層的?
mysite/
?目錄包含你的項目,它是一個純 Python 包。它的名字就是當(dāng)你引用它內(nèi)部任何東西時需要用到的 Python 包名。 (比如?mysite.urls
). -
mysite/__init__.py
:一個空文件,告訴 Python 這個目錄應(yīng)該被認(rèn)為是一個 Python 包。如果你是 Python 初學(xué)者,閱讀官方文檔中的?更多關(guān)于包的知識。 -
mysite/settings.py
:Django 項目的配置文件。如果你想知道這個文件是如何工作的,請查看?Django 配置?了解細(xì)節(jié)。 -
mysite/urls.py
:Django 項目的 URL 聲明,就像你網(wǎng)站的“目錄”。閱讀?URL調(diào)度器?文檔來獲取更多關(guān)于 URL 的內(nèi)容。 -
mysite/asgi.py
:作為你的項目的運行在 ASGI 兼容的 Web 服務(wù)器上的入口。閱讀?如何使用 ASGI 來部署?了解更多細(xì)節(jié)。 -
mysite/wsgi.py
:作為你的項目的運行在 WSGI 兼容的Web服務(wù)器上的入口。閱讀?如何使用 WSGI 進行部署?了解更多細(xì)節(jié)。
測試結(jié)果
讓我們來確認(rèn)一下你的 Django 項目是否真的創(chuàng)建成功了。如果你的當(dāng)前目錄不是外層的?mysite
?目錄的話,請切換到此目錄,然后運行下面的命令:
意思就是切換到mysite目錄,運行下面的命令
python manage.py runserver
你應(yīng)該會看到如下輸出:
Performing system checks...
System check identified no issues (0 silenced).
You have unapplied migrations; your app may not work properly until they are applied.
Run 'python manage.py migrate' to apply them.
一月 22, 2024 - 15:50:53
Django version 5.0, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
你已經(jīng)啟動了 Django 開發(fā)服務(wù)器,這是一個用純 Python 編寫的輕量級網(wǎng)絡(luò)服務(wù)器。我們在 Django 中包含了這個服務(wù)器,所以你可以快速開發(fā),而不需要處理配置生產(chǎn)服務(wù)器的問題 -- 比如 Apache -- 直到你準(zhǔn)備好用于生產(chǎn)。
現(xiàn)在是個提醒你的好時機:千萬不要?將這個服務(wù)器用于和生產(chǎn)環(huán)境相關(guān)的任何地方。這個服務(wù)器只是為了開發(fā)而設(shè)計的。(我們在網(wǎng)絡(luò)框架方面是專家,在網(wǎng)絡(luò)服務(wù)器方面并不是。)
服務(wù)器現(xiàn)在正在運行,通過瀏覽器訪問?http://127.0.0.1:8000/?。你將看到一個“祝賀”頁面,有一只火箭正在發(fā)射。你成功了!
創(chuàng)建投票應(yīng)用?
現(xiàn)在你的開發(fā)環(huán)境——這個“項目” ——已經(jīng)配置好了,你可以開始干活了。
在 Django 中,每一個應(yīng)用都是一個 Python 包,并且遵循著相同的約定。Django 自帶一個工具,可以幫你生成應(yīng)用的基礎(chǔ)目錄結(jié)構(gòu),這樣你就能專心寫代碼,而不是創(chuàng)建目錄了。
項目 VS 應(yīng)用
項目和應(yīng)用有什么區(qū)別?應(yīng)用是一個專門做某件事的網(wǎng)絡(luò)應(yīng)用程序——比如博客系統(tǒng),或者公共記錄的數(shù)據(jù)庫,或者小型的投票程序。項目則是一個網(wǎng)站使用的配置和應(yīng)用的集合。項目可以包含很多個應(yīng)用。應(yīng)用可以被很多個項目使用。
意思就是一個項目的主系統(tǒng),和下面的具體應(yīng)用,就像應(yīng)用商店和軟件的意義
請確定你現(xiàn)在處于?manage.py
?所在的目錄下,然后運行這行命令來創(chuàng)建一個應(yīng)用:
cmd進入黑窗口
python manage.py startapp polls
這將創(chuàng)建一個名為?polls
?的目錄,其布局如下:
polls/ __init__.py admin.py apps.py migrations/ __init__.py models.py tests.py views.py
編寫第一個視圖?
讓我們開始編寫第一個視圖吧。打開?polls/views.py
,把下面這些 Python 代碼輸入進去:
?
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello, world. You're at the polls index.")
這是 Django 中最簡單的視圖。如果想看見效果,我們需要將一個 URL 映射到它——這就是我們需要 URLconf 的原因了。
要在 polls 目錄中創(chuàng)建一個 URL 配置,請創(chuàng)建一個名為?urls.py
?的文件?,F(xiàn)在你的應(yīng)用程序目錄應(yīng)該如下所示:
‘’
在?polls/urls.py
?中,輸入如下代碼:
from django.urls import path
from . import views
urlpatterns = [
path("", views.index, name="index"),
]
下一步是要在根 URLconf 文件中指定我們創(chuàng)建的?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),
]
函數(shù)?include()?允許引用其它 URLconfs。每當(dāng) Django 遇到?include()?時,它會截斷與此項匹配的 URL 的部分,并將剩余的字符串發(fā)送到 URLconf 以供進一步處理。
我們設(shè)計?include()?的理念是使其可以即插即用。因為投票應(yīng)用有它自己的 URLconf(?polls/urls.py
?),他們能夠被放在 "/polls/" , "/fun_polls/" ,"/content/polls/",或者其他任何路徑下,這個應(yīng)用都能夠正常工作。
我們發(fā)現(xiàn)上面的代碼是?mysite/urls.py找到polls/urls.py
?找到?polls/views.py
最后我啟動應(yīng)用
python manage.py runserver
用你的瀏覽器訪問?http://localhost:8000/polls/,你應(yīng)該能夠看見 "Hello, world. You're at the polls index." ,
但是我們不只是為了獲取這個,我們還要找到html頁面
我們在?mysite/settings.py
?進行配置,配置是為了讓danjgo快速找到我們的html靜態(tài)文件
在polls中新建一個文件夾,用來放靜態(tài)文件
首先我們在mysite中配置路由urls文件,他指向了polls的urls
?
?在polls的urls中配置實際路由
可以看到當(dāng)你輸入???http://127.0.0.1:8000/polls?時訪問的就是index
輸入??http://127.0.0.1:8000/?index時訪問的就是login
在polls的view中配置具體的邏輯,index就是轉(zhuǎn)發(fā)到html,login就是在瀏覽器上顯示1111
由于我們有轉(zhuǎn)發(fā),所以增加html?
在polls中的templates增加html文件,名字就叫l(wèi)oginTest.html
action代表點擊提交后,我們轉(zhuǎn)到那個網(wǎng)址
現(xiàn)在的邏輯就是我們訪問???http://127.0.0.1:8000/polls/?,他轉(zhuǎn)到這個頁面,我們點擊提交后,他轉(zhuǎn)到?http://127.0.0.1:8000/polls/index,屏幕顯示1111
我們再次啟動,嘗試一下
python manage.py runserver
?文章來源:http://www.zghlxwxcb.cn/news/detail-820054.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-820054.html
到了這里,關(guān)于Django入門,十分鐘學(xué)會登錄網(wǎng)頁的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!