W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
URLconfs 有鉤子來允許你把其他參數作為 Python 字典來傳遞給視圖函數。
?path()
? 函數可帶有可選的第三參數(必須是字典),傳遞到視圖函數里。
例如:
from django.urls import path
from . import views
urlpatterns = [
path('blog/<int:year>/', views.year_archive, {'foo': 'bar'}),
]
在這個例子里,當請求到 ?/blog/2005/
? 時,Django 將調用 ?views.year_archive(request, year=2005, foo='bar')
? 。
同樣的,你可以額外其他選項給 ?include()
? ,并且已包含的 URLconf 里的每一行將被傳遞額外選項。
例如,下面兩個 URLconf 配置在功能上是相同的:
配置一:
# main.py
from django.urls import include, path
urlpatterns = [
path('blog/', include('inner'), {'blog_id': 3}),
]
# inner.py
from django.urls import path
from mysite import views
urlpatterns = [
path('archive/', views.archive),
path('about/', views.about),
]
配置二:
# main.py
from django.urls import include, path
from mysite import views
urlpatterns = [
path('blog/', include('inner')),
]
# inner.py
from django.urls import path
urlpatterns = [
path('archive/', views.archive, {'blog_id': 3}),
path('about/', views.about, {'blog_id': 3}),
]
注意額外的選項會一直傳遞給所包含的 URLconf 的每一行,不管視圖是否接受這些額外選項。因此,這個技巧僅在確定所包含的 URLconf 中的每一個視圖接受你傳遞的額外選項時有用。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯系方式:
更多建議: