第一种传参,路由中拼接参数:
主路由:
urlpatterns = [
path('admin/', admin.site.urls),
path('film/',include('film.urls')),
]
子路由:
from django.urls import pathfrom film import views
urlpatterns = [
path('<int:fid>/filmdetail/',views.filmDetail),
]
视图:
def filmDetail(request,fid):
return HttpResponse(fid)
浏览器地址栏访问:
http://127.0.0.1:8000/film/filmlist/kobe
第二种传参,子路由中添加参数:
主路由:
urlpatterns = [
path('admin/', admin.site.urls),
path('film/',include('film.urls')),
]
子路由:
urlpatterns = [
path('params/',views.OtherView,{'name':'kb'})
]
视图:
特别注意1:视图中必须传递name参数
def OtherView(request,name):
return HttpResponse(f'response-{name}')
第三种传参,主路由、子路由中添加参数:
主路由中添加参数:{‘config_id’:‘666’}
urlpatterns = [
path('admin/', admin.site.urls),
path('film/',include('film.urls'),{'supername':'china'})
]
子路由:
urlpatterns = [
path('params/',views.OtherView,{'name':'kb'})
]
视图:
def paramsview(request,age):
return HttpResponse('age')
访问url:http://127.0.0.1:8000/film/params/ ,报错
解决:视图中必须得接收主路由传递的参数
视图:
def OtherView(request,name,supername):
return HttpResponse(f'respo
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/74266.html