В django перенаправление не работает после выполнения редактирования и удаления
Я пытаюсь выполнить функции редактирования и удаления в Django. После редактирования и удаления он не перенаправляет меня на URL, указанный в параметрах. Скорее он остается на текущем URL.
Я хочу перенаправить на страницу adduser
, но она перенаправляет меня на edituser
и deleteuser
после выполнения редактирования и удаления.Я делюсь кодом для функции редактирования здесь.
urls.py
path('edituser/<uid>', views.edituser, name="edituser"),
views.py
def edituser(request, uid):
if request.method == "POST":
if request.POST.get('firstname') and request.POST.get('lastname'):
saverecord = AddContact()
saverecord.id = uid
saverecord.f_name = request.POST.get('firstname')
saverecord.l_name = request.POST.get('lastname')
saverecord.save()
viewRecords = AddContact.objects.filter(subscribe='subscribe')
return HttpResponseRedirect(reverse("adduser"), {'adduser': viewRecords, args=(AddContact.pk))
else:
viewRecords = AddContact.objects.filter(subscribe='subscribe')
messages.error(request, "Error During Editing of User")
return render(request, "adduser.html", {'adduser': viewRecords})
Adduser.html
Edit and Delete button
<a href="#userEditModal-{{forloop.counter}}" data-toggle="modal" class="btn btn-primary"><span class="fa fa-pencil"></span> Edit</a>
<a href="{% url 'deleteuser' id=vr.id %}" class="btn btn-danger" data-target="success-modal-delete"><span class="fa fa-trash"></span> Delete</a>
Edit model
{% for vr in adduser.adduser.all %}
<div class="modal fade" id="userEditModal-{{forloop.counter}}" tabindex="-1" role="dialog" aria-labelledby="largeModal"
aria-hidden="true">
<div class="modal-dialog modal-lg modal-dialog-centered">
<div class="modal-content">
<form method="POST" action="{% url 'edituser' uid=vr.id %}" class="needs-validation" novalidate>
{% csrf_token %}
<div class="modal-header">
<h5 class="modal-title">Edit User Data</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<!--Form Start-->
<div class="form-row">
<div class="form-group col-md-6">
<label for="FirstName">First Name<span style="color:#ff0000">*</span></label>
<input type="text" class="form-control" name="firstname" id="firstname" placeholder="Type FirstName here...." value="{{vr.f_name}}"
required />
<div class="valid-feedback">Valid.</div>
<div class="invalid-feedback">Please fill out this field.</div>
</div>
<div class="form-group col-md-6">
<label for="LastName">Last Name<span style="color:#ff0000">*</span></label>
<input type="text" class="form-control" name="lastname" id="lastname" placeholder="Type LastName here...." value="{{vr.l_name}}"
required />
</div>
<div class="valid-feedback">Valid.</div>
<div class="invalid-feedback">Please fill out this field.</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">
Close
</button>
<button id="UpdateUser" type="submit" class="btn btn-primary">Update</button>
</div>
</form>
<div class="alert alert-info" style="display: none;"></div>
</div>
</div>
</div>
{% endfor %}
Вот весь мой код для функциональности редактирования. Он должен перенаправлять меня на adduser.html
, но он перенаправляет меня на edituser
. Я новичок в Django python, поэтому прошу помочь.