Возвратная выписка не выполнена - PullRequest
0 голосов
/ 27 февраля 2019

мой HTML-код

<select class="custom-select" id="lab" name="lab" onchange="toggleLabs(this);" required >
                                  <option value="no">No Lab Choosen</option>
                                  <option value="newlab" id="newlab">New Lab</option>
                                  {% for lab in all_obj %}
                                  <option value='{{lab.lab_name}}'  onclick="myFunc()">{{lab.lab_name}}</option>
                                  {% endfor %}
                              </select>

javascript: где я получаю доступ к выбранной опции и передаю ее в views.py

 function toggleLabs(select){
iden_lab=select.options[select.selectedIndex].text;
 $(document).ready(function () {
    $.get("", url:'/listlabs(idenlab)',{slab: iden_lab}, function (data) {
        alert(iden_lab);
    });
});

my views.py, где я нахожусьрендеринг обратно

def listlabs(request,):
all_obj = labs.objects.all()
val = labs.objects.all(lab_name)
if request.method == 'POST':
    form = create_lab()
    if request.is_ajax():
        lab_selected = request.GET['slab']
        obj_val = labs.objects.filter(lab_name=lab_selected).values('lab_name')[0]
        print(obj_val)
        val = obj_val['lab_name']
        print(val)
        return render(request, 'listlabs.html/', {'form': form, 'all_obj': all_obj, 'val': val})

else:
  form = create_lab(request.POST)
  return HttpResponse('success')
return render(request, 'listlabs.html/', {'form': form ,'all_obj': all_obj,'val': val})

Я хотел val отрендерить, только если я перейду к части If.Я попытался распечатать, чтобы проверить, находится ли он внутри блока if.Он напечатал значение в моей командной строке, но оператор return не отображается.

отображается только последний оператор return, в котором мой val не был перезаписан,

Howя могу это исправить?Почему мое заявление на возврат не работает?

Спасибо.

1 Ответ

0 голосов
/ 27 февраля 2019

Попробуйте

def listlabs(request,):
all_obj = labs.objects.all()
val = labs.objects.all(lab_name)
form = create_lab()
if request.is_ajax():
    lab_selected = request.GET['slab']
    obj_val = labs.objects.filter(lab_name=lab_selected).values('lab_name')[0]
    print(obj_val)
    val = obj_val['lab_name']
    print(val)
    return render(request, 'listlabs.html/', {'form': form, 'all_obj': all_obj, 'val': val})

else:
    form = create_lab(request.POST)
    return HttpResponse('success')
return render(request, 'listlabs.html/', {'form': form ,'all_obj': all_obj,'val': val})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...