django-autocomplete-light添加参数来查询url

时间:2014-08-20 15:56:35

标签: django django-autocomplete-light

我正在尝试将一些数据传递给autocomplete_light.AutocompleteModelBase,因此我可以从搜索中排除某些模型。我正在尝试使用文档here

中的依赖关系信息

但我似乎可以得到它。

输入的ID为id_alternate_version-autocomplete,所以我正在尝试:

$("#id_alternate_version-autocomplete").yourlabsWidget().autocomplete.data = {'id': 'foo'};

但是调用的网址看起来像http://127.0.0.1:8000/autocomplete/FooAutocomplete/?q=bar

我想:http://127.0.0.1:8000/autocomplete/FooAutocomplete/?q=bar&id=foo

我该怎么办?

2 个答案:

答案 0 :(得分:2)

DAL通过"转发"提供了一种方法。另一个呈现的表单字段的值。

请参阅http://django-autocomplete-light.readthedocs.io/en/master/tutorial.html#filtering-results-based-on-the-value-of-other-fields-in-the-form

答案 1 :(得分:0)

我就这样做了:

$(document).ready(function() {
    $('form#recipe').on('change propertychange keyup input paste', function() {
        var ingredient_item_type    = $("form#recipe input[type='radio']:checked").val();
        var widget                  = $("form#recipe input#id_ingredients_text").parents('.autocomplete-light-widget');
        if(ingredient_item_type) {
widget.yourlabsWidget().autocomplete.data['hello'] = 'world';
        }
    });
});

除了Javascript杂技之外,关键的观察是:

您在自动填充小部件的.data对象中放置的任何内容都将是 自动成为GET请求的一部分。 HTH。