濮阳杆衣贸易有限公司

主頁 > 知識庫 > Django URL和View的關系說明

Django URL和View的關系說明

熱門標簽:400電話 申請 條件 賓館能在百度地圖標注嗎 鄭州智能外呼系統(tǒng)中心 南京crm外呼系統(tǒng)排名 crm電銷機器人 汕頭電商外呼系統(tǒng)供應商 云南地圖標注 電銷機器人 金倫通信 北京外呼電銷機器人招商

URL和View的關系

1、每次用戶發(fā)來一個HttpRequest請求,Django會用URL_pattern與請求進行匹配,匹配到第一個URL_pattern就會把請求轉(zhuǎn)向?qū)膙iew

2、view用來響應request,并返回response,response里可以包含網(wǎng)頁文件呀,圖片等等。所以項目中絕大部分代碼均在此編寫。

view 可以引入通用模板來減少代碼量,具體查看文檔

Use generic views

3、view引入HTML文件的方法:

在一個app下建立一個templates文件夾,將html文件放進去該文件夾

這里其實不一定要把HTML文件放在這個templates里,可以隨意定義

不過,需要在setting.py里,找到templates,

修改DIRS:[ os.path.join (BASE_DIR,'你定義的html存放的文件夾')]

在app下 view.py 文件,在里面寫好view函數(shù)

def 函數(shù)名(request):

return render(request,'index.html')

render(渲染)需要三個變量, 第一個變量是request請求,第二個是模版所在目錄,第三個是一個字典(可選),字典用于對應模板里設計的變量,可以用locals()將函數(shù)里設計的變量自動轉(zhuǎn)換為字典

4、在對于app下創(chuàng)建一個urls.py ,寫入如下內(nèi)容

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

5、在項目文件夾里找到 urls.py 加入如下內(nèi)容

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

對于a>標簽里的 href 可以用 {% url 'url名' %}來代替,url名指的是 urls.py 里的path('login.html/', views.my_login, name='url名'),

Django 中通常使用 get_object_or_404()來捕捉 404 錯誤,而不用自己寫 try...except

def detail(request, question_id):
 question = get_object_or_404(Question, pk=question_id)
 return render(request, 'polls/detail.html', {'question': question})

補充:django中url與view配置方法

django中url與view配置方法(一)

url.py

from django.conf.urls import url
from . import views
urlpatterns = [
 url(r'^$', views.showAssets, name='show_assets'),
]

views.py

# -*- coding: utf-8 -*-
from django.shortcuts import render_to_response
# Create your views here.
def showAssets(request):
 return render_to_response('assets_index.html', {})

django中url與view配置方法(二)

url.py

# -*- coding: utf-8 -*-
from django.conf.urls import url
from app001.views import IndexView
urlpatterns = [
 url(r'^admin/', admin.site.urls),
 url(r'^$', IndexView.as_view(), name="index"), ]

views.py

# -*- coding: utf-8 -*-
from django.views.generic.base import View
from django.shortcuts import render
# Create your views here.
class IndexView(View):
 def get(self, request):
  return render(request, 'index.html', {})

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • django ListView的使用 ListView中獲取url中的參數(shù)值方式
  • Django項目主urls導入應用中views的紅線問題解決
  • django多個APP的urls設置方法(views重復問題解決)
  • django url到views參數(shù)傳遞的實例

標簽:懷化 錫林郭勒盟 浙江 西寧 石家莊 昆明 梅州 文山

巨人網(wǎng)絡通訊聲明:本文標題《Django URL和View的關系說明》,本文關鍵詞  Django,URL,和,View,的,關系,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Django URL和View的關系說明》相關的同類信息!
  • 本頁收集關于Django URL和View的關系說明的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    亚东县| 霍邱县| 雅安市| 保山市| 磴口县| 合阳县| 广灵县| 西平县| 邓州市| 大姚县| 高台县| 来宾市| 荆门市| 仙居县| 辽阳县| 都安| 依安县| 滦南县| 永顺县| 新干县| 拜泉县| 万年县| 河间市| 清水县| 星座| 文水县| 三明市| 牡丹江市| 庆云县| 永仁县| 佳木斯市| 株洲市| 远安县| 丁青县| 琼海市| 阿克| 天津市| 策勒县| 全椒县| 绥江县| 二连浩特市|