似乎我想做的事应该很简单,但是我还没弄清楚。我正在将Django 2.06与Geodjango一起使用。我有一个带下拉菜单的简单UI。为了响应下拉选择中的更改,我为onChange事件提供了一个事件侦听器。想法是从事件中获取e.target.value并将其作为URL中查询参数的值。
所以在index.html中,我有:
const property_name = document.getElementsByName('properties')[0];
property_name.addEventListener('change', (e) => {
zones = new L.GeoJSON.AJAX("{% url 'zones' property=e.target.value %}", { ...
在urls.py中,我有:
url(r'^zones_data/$', zone_datasets2, name='zones'),
并且在views.py中,我拥有:
def zone_datasets2(request):
property = request.GET.get('property', '')
[当我尝试加载网页时,出现的错误是:
NoReverseMatch at /
Reverse for 'zones' with keyword arguments '{'property': ''}' not found. 1 pattern(s) tried: ['zones_data/$']
有人可以告诉我我在做什么错吗?如何将下拉菜单选择传递给URL,以及如何定义适用于此的URL模式?谢谢。
如果要使用/zones_data?property=...
之类的网址,则应具有:
"{% url 'zones' %}?property=e.target.value"