当前位置: 首页 > 知识库问答 >
问题:

Django得到了一个意想不到的关键字参数'id'

佟阳云
2023-03-14

我正在尝试用Django创建一个电话簿。我的网址。py:

    urlpatterns = [
    url(r'^$', views.people_list, name='people_list'),
    url(r'^(?P<id>\d)/$', views.person_detail, name='person_detail'),
]

意见。py:

def people_list(request):
    people = Person.objects.all()
    return render(request, 'phonebook/person/list.html', {'people': people})


def person_detail(request, person):
    person = get_object_or_404(Person, id=person)
    return render(request, 'phonebook/person/detail.html', {'person': person})

从models.py:

def get_absolute_url(self):
    return reverse('phonebook:person_detail', args=[self.id])

和列表。html:

{% block content %}
<h1>Phonebook</h1>
{% for person in people %}
<h2>
    <a href="{{ person.get_absolute_url }}">
        {{ person.name }} {{ person.last_name }}
    </a>
</h2>
<p class="where">
{{ person.department }}, {{ person.facility }}
    </p>
{{ person.phone1 }}<br>
{% endfor %}
{% endblock %}

索引看起来不错,但当我尝试单击链接以获取个人详细信息网站时,我收到以下消息:

/phonebook/4/person\u detail()处的TypeError获取了意外的关键字参数“id”请求方法:获取请求URL:http://127.0.0.1:8000/phonebook/4/Django版本:1.9。6异常类型:TypeError异常值:person_detail()获得意外的关键字参数“id”

我有和'id'参数在urls.py和函数get_absolute_url。我不明白怎么了。

共有3个答案

张献
2023-03-14

我的错误是我只添加了第一个参数,而不是两个参数,即我提到了def person_detail(请求),而不是def person_detail(请求,id)

柳韬
2023-03-14

您应该修复视图并使用id参数名而不是

def person_detail(request, id):
李谦
2023-03-14

您的参数?P

它们都应该是id或都是person

 类似资料:
  • 我在做一个程序,制作一些关于新冠病毒病例的图表,遇到了一些问题。代码应该显示三个图形,但只显示两个。有人能帮我找出这里的错误吗? 错误:TypeError:choropleth()获取了意外的关键字参数“location” 代码:

  • 我正在尝试使用Flask为Python脚本创建一个可执行文件。由于某些原因,当我试图生成可执行文件时,我得到以下错误: C:\Users\jcalv\Downloads\Cache 以下是我setup.py的内容: 我目前正在使用Python 3.6。5和cx-freeze-5.1。1. 任何帮助都将不胜感激。

  • 我想有一个滚动应用的数据帧,但是我有问题与我的自定义函数,我想有一个额外的输入: 这是回报

  • 问题内容: 我是Django的新手,我无法弄清楚这个错误。请帮忙。它提供了TypeError- save()得到了意外的关键字参数’force_insert’。我测试了下面的代码,他们能够保存新的用户注册,但现在将不再保存… 这是我认为有问题的views.py的一部分: 和models.py 问题答案: 当您在Django中覆盖模型的save方法时,还应该传递和覆盖方法。该代码可能工作正常:

  • 我正试图与Featuretools合作,为客户流失数据集开发一个自动化的特征工程工作流。最终结果是一个函数,它接收数据集并为客户标记时间,并构建可用于训练机器学习模型的特征矩阵。 作为本练习的一部分,我尝试执行以下用于绘制直方图的代码,并得到“TypeError:import_optional_dependency()得到一个意外的关键字参数'errors'”。请帮助解决此类型错误。 以下是我收到

  • 我是一种新的熊猫,我正在使用和来枢转我的数据帧,我得到了这个错误: TypeError: Swplevel()得到了一个意外的关键字参数axis 我已经检查了熊猫文件,功能以轴为参数,请问我做错了什么!非常感谢。