Django URL 参数传递:完整指南
在 Django 中通过 URL 传递参数,可以使用带占位符的 URL 模式。以下是一个示例:
- 在您的
urls.py文件中,定义一个带占位符的 URL 模式:
from django.urls import path
from . import views
urlpatterns = [
path('article/<int:pk>/', views.article_detail, name='article_detail'),
]
在这个例子中,URL 模式是 article/<int:pk>/,其中 <int:pk> 是一个整数类型值的占位符。article_detail 视图函数将处理对该 URL 模式的请求。
- 在您的视图函数中,使用通过 URL 传递的参数:
from django.shortcuts import render, get_object_or_404
from .models import Article
def article_detail(request, pk):
article = get_object_or_404(Article, pk=pk)
return render(request, 'article_detail.html', {'article': article})
在这个例子中,pk 参数作为参数传递给 article_detail 视图函数。然后使用它通过 get_object_or_404 快捷函数从数据库中检索相应的 Article 对象。
- 在您的模板中,使用在视图函数中传递的参数:
<h1>{{ article.title }}</h1>
<p>{{ article.content }}</p>
在这个例子中,从视图函数传递的 article 对象用于在模板中显示文章的标题和内容。
- 最后,要使用参数生成 URL,可以使用
url模板标签:
<a href="{% url 'article_detail' pk=article.pk %}">{{ article.title }}</a>
在这个例子中,url 模板标签为 article_detail 视图函数生成一个 URL,并将 pk 参数设置为 article 对象的 pk 属性。这个 URL 可以用在指向文章详情页面的链接中。
原文地址: https://www.cveoy.top/t/topic/mDgf 著作权归作者所有。请勿转载和采集!