我想将一个整数解析为url,所以我像这样构建我的url(有3个url,因为可以没有参数,place或place和一个整数)
urlpatterns = [
url(r'^map/$', geov.map_view, name = "map_view"),
url(r'^map/(?P<search_place>[^\.]+)/$', geov.map_view, name = "map_view_accurate"),
url(r'^map/(?P<search_place>[^\.]+)/(?P<digit>\d+)/$', geov.map_view),
]
所以在我看来:
def map_view(request, search_place = None, digit = 0):
results = {}
print(digit)
if search_place is not None:
query = Place_search.objects.filter(name_lower__icontains=search_place.lower()).order_by("-importance")
results["query"] = query
else:
points = Place.objects.all()
lon = points.count()
results["points"]=points
results["lon"] = lon
return render_to_response("index.html", results)
但是digit总是0,查询变量没有得到任何元素。如果我只使用第二个url(例如:本地主机:8000/地图/马德里“工作正常)
第二个url的regexp通过第三个url捕获您想要捕获的内容,即使用斜杠和数字搜索位置,您应该将其更改为:
相关问题 更多 >
编程相关推荐