Django學習3:創建第一個項目、應用,解析視圖函數和URL的映射

1.創建項目:切換到創建項目的目錄,輸入

django-admin startproject firstproject

 firstproject爲項目名稱,創建成功後會在創建目錄的位置創建一個firstproject的文件夾

文件夾中各個文件的功能如下:

創建項目應用APP:每個APP代表網站的一個或多個網頁

進入項目目錄:cd firstproject

輸入: python manage.py startapp appname

 

2.運行項目:進入firstproject目錄,輸入

python manage.py runserver

可以輸入默認的地址

http://127.0.0.1:8000/

查看是否運行成功

127.0.0.1是隻能自己的電腦訪問的網站,8000是端口,也可以通過下面的方式設置修改。

3.如果要讓同一局域網下的其他電腦可以訪問此網站,可以命令行設置:

python manage.py runserver 0.0.0.0:8000

或者通過Pycharm右上角Edit configer設置

在settings文件中的ALLOWED_HOSTS=[]裏填入自己電腦的IP地址

這時在同一局域網下的電腦就可以通過自己電腦的IP地址加端口的方式訪問此網站

4.URL與視圖函數的映射關係

在urls.py寫下如下代碼,來弄清楚幾個視圖函數和url的關係

from django.contrib import admin
from django.urls import path
from django.http import HttpResponse

def index(request):
    return HttpResponse("主頁")
def user(request):
    return HttpResponse("用戶中心")
def play(request):
    return HttpResponse("播放中心")
urlpatterns = [
    path('admin/', admin.site.urls),
    #http://127.0.0.1:8000/
    path('', index),
    #http://127.0.0.1:8000/play
    path('play/',play),
    #http://127.0.0.1:8000/user
    path('user/',user)
]

在urls.py有一個初始的urlpath('admin/', admin.site.urls),但是如果我們想加載自己的東西,就需要自己定義URL

  •  path('', index)——輸入默認IP地址爲http://127.0.0.1:8000,輸入http://127.0.0.1:8000時,就會出來index視圖函數所返回的內容

  •  path('play/',play),    相當於訪問   http://127.0.0.1:8000/play,就可以調用視圖函數play


 而往往訪問一個頁面時返回的不可能是簡簡單單的幾個字,會有圖片、文字、渲染和交互功能等,這個時候這一個頁面就相當於一個應用,關於這一個應用的所有內容都在這一應用的文件夾下,這樣可以方便去獨立、分層開發

5.新建應用APP的方法:

  • 1.進入項目目錄:cd firstproject
  • 2.創建一個名爲index的首頁輸入: python manage.py startapp index

以此類推新建了index、user、play幾個應用,如下圖,每個應用中都有自己的視圖views、模型models等,剛剛在項目firstproject的urls.py裏寫的視圖函數就可以分別寫入各層的views中

比如將剛剛在firstproject的urls.py中user視圖函數放到user的views.py中裏來,如下 

from django.shortcuts import render
from django.http import HttpResponse
# 用戶中心的視圖
def user(request):
    return HttpResponse("用戶中心")

然後在項目firstproject的urls中加入下面這句引用,就不會報錯識別不到user了

from user.views import user
  • 3.在項目firstproject的setting.py中,找到INSTALLED_APPS,把自己建的應用名稱加進去

  • 4.最後試一下用戶中心的訪問,在瀏覽器中輸入
    http://127.0.0.1:8000/user

 

參考教程:https://www.bilibili.com/video/av93363026?p=10

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章