如何解决使用关键字参数 '{'pk': 11}' not found 反转 'detail_view' -使用 Slug 字段
我想做什么:-
我只是将 slug
添加到我的模型中,并且还更新了 get_absolute_url
和 url
。
使用关键字参数 '{'pk': 11}' 反转 'detail_view' 未找到。尝试了 1 个模式:['detail_view/(?P[-a-zA-Z0-9_]+)/(?P[0-9]+)$']
models.py
class Post(models.Model):
post_owner = models.ForeignKey(User,default='',null=True,on_delete = models.CASCADE)
post_title = models.CharField(max_length=500,default='')
slug = models.SlugField(null=True)
def get_absolute_url(self):
return reverse('detail_view',kwargs={'pk':self.pk,'slug':self.slug})
views.py
def detail_view(request,pk,slug):
data = get_object_or_404(Post,pk=pk)
urls.py
path('detail_view/<slug:slug>/<int:pk>',views.detail_view,name='detail_view'),
模板.html
<a href="{% url 'detail_view' pk=topic.pk %}">More</a><br>
我不知道是什么导致了这个错误。
感谢您的帮助
解决方法
您还必须在模板 slug
标签 url
中提供 slug=topic.slug
:
<a href="{% url 'detail_view' slug=topic.slug pk=topic.pk %}">More</a><br>
或使用模型的 get_absolute_url
方法:
<a href="{{ topic.get_absolute_url }}">More</a><br>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。