【发布时间】:2017-07-23 07:31:58
【问题描述】:
这是我在 models.py 中的课程:
class Person(models.Model):
name = models.CharField(max_length=64)
persnr = models.AutoField(primary_key=True)
这是我的看法:
def show_person(request, persnr):
pers = get_object_or_404(Person, pk=persnr)
context={'pers':pers}
return render(request, 'company/person.html', context)
这是我的网址:
url(r'^show_person/(?P<persnr>\d+)', "company.views.show_person", name='show_person'),
如何使用这两个 url 获得相同的视图 (show_person):
server/show_person/(persnr)
server/show_person/(name)
【问题讨论】:
-
是什么阻止您创建另一个捕获名称的 URL?当然,这不起作用,因为视图需要 PK,所以不清楚为什么您希望两个 URL 转到同一个视图。
-
我试过了,但不知道如何用预期的 pk 修复错误
-
我建议不要让两个相同的页面具有相同的 URL。你应该选择一个你喜欢的,然后重定向另一个。例如将
show_person/123转换为show_person/john-smith。
标签: django django-urls