反向查找'blog_detail',未找到任何参数.尝试了1个模式:['博客/(?P< pk> [0-9] +)$'] [英] Reverse for 'blog_detail' with no arguments not found. 1 pattern(s) tried: ['blog/(?P<pk>[0-9]+)$']

查看:65
本文介绍了反向查找'blog_detail',未找到任何参数.尝试了1个模式:['博客/(?P< pk> [0-9] +)$']的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

反向查找"blog_detail",未找到任何参数.

Reverse for 'blog_detail' with no arguments not found.

反向查找"blog_detail",未找到任何参数.1个图案尝试过:['blog/(?P [0-9] +)$']

Reverse for 'blog_detail' with no arguments not found. 1 pattern(s) tried: ['blog/(?P[0-9]+)$']

models.py

models.py

class Blog(models.Model):
    author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
    title = models.CharField(max_length=80)
    slug = models.SlugField(max_length=80, unique=True, db_index=True, blank=True, null=True)
    description = models.TextField(max_length=1080, blank=True, null=True)
    image = models.ImageField(upload_to='blog/')
    tags = models.CharField(max_length=30, blank=True, null=True)
    category2 = models.CharField(max_length=50, blank=True, null=True)
    category = models.ManyToManyField("BlogCategory")
    created_on = models.DateTimeField(default=timezone.now())
    is_active = models.BooleanField(default=True)

    def __unicode__(self):
        return self.title

    def get_absolute_url(self):
        return reverse("blog_detail", kwargs={"pk": self.pk})

views.py

class BlogDetail(DetailView):
    model = Blog
    queryset =  Blog.objects.all()
    template_name = "testapp/blogd.html"

urls.py


from django.urls import path
from .views import (BlogList, BlogDetail)

urlpatterns = [

    path('blog/l', BlogList.as_view(), name='blog_list'),
    path('blog/<int:pk>', BlogDetail.as_view(), name='blog_detail'),
]


推荐答案

您必须使用args关键字才能在get_absolute_url方法中传递参数:

you must args keyword for passing arguments in get_absolute_url method:

def get_absolute_url(self):
    return reverse("blog_detail", args=[str(self.pk)])

这篇关于反向查找'blog_detail',未找到任何参数.尝试了1个模式:['博客/(?P&lt; pk&gt; [0-9] +)$']的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆