繁体   English   中英

Django“ TypeError:list()得到了意外的关键字参数'id'”错误

[英]Django “TypeError: list() got an unexpected keyword argument 'id''” error

创建一个对象后,我试图重定向到打算作为对象主页实现的页面。 views.py

from django.shortcuts import render, get_object_or_404
from f.models import Post


def list(request):
    post = Post.objects.all()
    context = {
        'post': post,
    }
    return render(request, 'list.html', context)


def detail(request, id=None):
    Post = get_object_or_404(post, id=id)
    context = {
        'Post': Post,
    }
    return render(request, 'detail.html', context)

url.py

urlpatterns = [
    url(r'^$', views.list, name='list'),
    url(r'^(?P<id>[0-9]{1,3})$', views.list, name='detail'),
]

和我的错误

Django Version:     1.9.10
Exception Type:     TypeError
Exception Value:    

list() got an unexpected keyword argument 'id'

Python Version:     3.5.2

看一下路线:

url(r'^(?P<id>[0-9]{1,3})$', views.list, name='detail'),

您正在将详细信息URL发送到列表视图views.list而不是详细信息views.detail

顺便说一句,最好为列表视图选择一个不同的名称,因为list遮盖内置名称list

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM