编写带url参数的路由,4种类型参数
app1.url.py
from django.urls import path
from . import views
urlpatterns = [
path('index', views.index, name='index'),
path('test', views.test, name='test'),
path('test_int/<int:id>/', views.test_int, name='test_int'),
path('test_str/<str:strdata>/', views.test_str, name='test_str'),
path('test_slug/<slug:slugdata>/', views.test_slug, name='test_slug'),
path('book_uuid/<uuid:bookuuid>/', views.book_uuid, name='book_uuid'),
]
app1.views.py
from django.http import HttpResponse
from django.shortcuts import render
def index(request):
return HttpResponse("app1 的index")
def test(request):
return render(request, '1/index.html', {})
def test_int(request, id):
# 你可以在这里使用 'id',比如从数据库获取对应的数据
# ...
response = HttpResponse(f"test_int路由访问参数:{id}")
response['Content-Type'] = "text/html; charset=utf-8"
return response
def test_str(request, strdata):
# 你可以在这里使用 'id',比如从数据库获取对应的数据
# ...
response = HttpResponse(f"test_str路由访问参数:{strdata}")
response['Content-Type'] = "text/html; charset=utf-8"
return response
def test_slug(request, slugdata):
# 你可以在这里使用 'id',比如从数据库获取对应的数据
# ...
response = HttpResponse(f"test_slug路由访问参数:{slugdata}")
response['Content-Type'] = "text/html; charset=utf-8"
return response
from uuid import UUID
def book_uuid(request, bookuuid: UUID):
# 在这里,'bookuuid' 是一个UUID 对象。
return HttpResponse(f"Book's UUID is: {str(bookuuid)}")