У меня есть форма, где есть 3 поля, и я хочу вставить их в базу данных. Моя таблица - это kitty_member, а поля - это код, слот и клиент. Код принадлежит первичному ключу таблицы котенка, имеющей поле «totalmembers». Как пользователь выбирает «код». я хочу показать список подстрекателей от 1 до «totalmembers» по отношению к «code». Например, когда totalmembers = 100 для code = 'K00001', должен отображаться выпадающий список от 1 до 100, а если code = 'k00002', у которого totalmembers = 50, то в раскрывающемся списке должно быть от 1 до 50. Итак, я написал один ajaxв поле «код». Я пытаюсь вызвать URL-адрес, передав параметр "код". Так что я могу вернуть "totalmembers", чтобы заполнить выпадающий список "Slots". Ниже приведен вызов Ajax, который находится в base.html.
<script>
function callsamepage() {
var code1 = $('#code').val()
console.log(code)
$.ajax({
type:"POST",
url: "kitty_member1" ,
data:{
code: code1
},
success: function(result){
console.log('correct',result)
}
});
}
Views.py
def kitty_member1(request,code='None'):
url_name = request.resolver_match.url_name
print(url_name)
print(code)
customers = customer.objects.all().distinct('mobile')
kittys = kitty.objects.all()
if code != 'None' :
kittys = kittys.filter(code=code)
for i in kittys:
totalmembers = i.totalmembers
members = []
for j in range(totalmembers):
members.append(j)
print(members)
ctx = {'customer': customers, 'kitty': kittys, 'member':members}
else:
ctx = {'customer': customers, 'kitty': kittys}
Urls.py
urlpatterns = [
path('',views.index,name='index'),
path('kitty_member',views.kitty_member_save,name='kitty_member'),
path('kitty_member1/', views.kitty_member1, name='kitty_member1'),
path('kitty_member1/<code>', views.kitty_member1, name='kitty_member1')]
template
{% extends 'base.html' %}
{% load static %}
{% block content %}
<div class="container">
<div class='row'>
<div class="col-lg-12 col-xs-12">
<div class="customer">
<form name='myform' class="form-signin" action="" method="POST">
{% csrf_token %}
<h1 class="h3 mb-3 font-weight-normal redc">Kitty Slots Allocation to Customer</h1>
<div class="mb-3">
<select class="custom-select center-block" name="code" id="code" required onchange="callsamepage()">
<option value="">Select Kitty</option>
{% for i in kitty %}
<option value="{{ i.code }}" > {{ i.code|add:' - '|add:i.name }} </option>
{% endfor %}
</select>
<div class="invalid-feedback">
Please select a valid Existing Customer.
</div>
</div>
<div class="mb-3">
<select class="custom-select center-block" name="slot" id="slot" required >
{% for j in member %}
<option value="{{ j }}" > {{ j }} </option>
{% endfor %}
</select>
<div class="invalid-feedback">
Please select a valid Slot.
</div>
</div>
<div class="mb-3">
<select class="custom-select center-block" name="customer" id="customer" required>
<option value=""> Select Customer </option>
{% for i in customer %}
<option value="{{ i.mobile }}"> {{ i.mobile|add:' - '|add:i.name }} </option>
{% endfor %}
</select>
<div class="invalid-feedback">
Please select a valid Existing Customer.
</div>
</div>
<div style="padding-top: 20px;">
{% if request.resolver_match.url_name == 'kitty_member' %}
<button class="btn btn-md btn-primary" type="submit" data-toggle="modal"
data-target="#exampleModalCenter">Save</button>
{% endif %}
</div>
</form>
</div>
</div>
</div>
</div>
{% endblock %}
Я не могу заполнитьПоле «Слот».