【发布时间】:2016-07-05 09:43:00
【问题描述】:
我的 django 项目在生产中遇到问题。它引发“匹配查询不存在”。在我的本地主机中完美运行,错误仅在我的服务器中。
有错误的那一行是查询
sub_obj = Sub.objects.get(name=name)
在这种情况下,我无法通过“id”访问模型,因为视图通过 href 从模板获取该参数:
<a href="/pr/sub/{{s.name}}">{{s.name}}</a>
当名称中有空格时会发生此错误,例如 name='My Name'。这可能与服务器有关吗?使用空格分隔的参数是否可能出现此错误?或者可能是别的什么?
这个视图的网址是
url(r'^pr/sub/(?P<nname>.*)', show_only_sub),
【问题讨论】:
-
nname拼写正确吗? -
我已经用 url 更新了,问题只在我的服务器上(在本地工作正常),它与使用空格的查询有关。
-
也许stackoverflow.com/questions/120951/… 可以帮助您,但我建议您在 URL 上使用
slug,而不是平面名称。