2017-10-11 16 views
0

私はAjaxリクエストでフィルタのリストを取得しようとしていますが、リストを取得しようとすると、何らかの理由で空のリストを取得する。 以下は私のビューとajax(jQuery)関数の関連部分です。 $.ajax({ .... 'filters': fixed })で1つのフィルタを送信しようとすると、これは機能しますが、リストでは失敗します。django ajaxは、get ajaxリクエストからリストを取得できません

更新:データを試してみる:{'filters': JSON.stringify([fixed])}は、django '["fixed"]'に文字列としてデータを渡します(私はgetl​​istを使用しない場合は処理できますが、getとjson.loads()が必要です)。ここでは簡単な方法

def quotes_results_filter_view(request): 
    results_filters = request.GET.getlist('filters') or [] 
    quotes_results = request.session['quotes_results'] 
    for results_filter in results_filters: 
     ....... 

のAjax機能:あなたはjQueryの経由リストを送信すると、それは にキーワードを変更

$(document).ready(function() { 
     $('#id_filter').change(function (e) { 
     var fixed = $(this).val() 
     console.log(fixed) 
    $.ajax({ 
     url: '/users/filters/', 
     data: { 
     'filters': [fixed] 
     }, 
     dataType: 'json', 
     success: function (data) { 
     console.log(data) 
     } 
    }) 

答えて

1

のでジャンゴには、おそらくこのように取得する必要があります。 request.GET.getlist('filters[]')

+0

あなたはそうです、jQueryはこれを行います、ここではDjangoとは関係ありません。非常に奇妙な。ありがとう。 – Yunti

関連する問題