En mi plantilla HTML, estoy imprimiendo una lista de mi QuerySet que pasé de views.py en Django. Quiero que los usuarios eliminen una entrada de la lista sin actualizar la página. ¿Cómo puedo hacer eso?
urls.py - path("del_trans/<int:trans_num>", views.delete_transaction, name="delete_transaction")
vistas.py
def delete_transaction(request, trans_id): user = User.objects.get(username=request.user) transaction = Transaction.objects.get(ruser=user, id=trans_id) transaction.delete() return HttpResponse(status=204)trans.html
<tr id="trans-{{t.id}}"> <td>{{ t.name }}</td> <td><button class="btn" onclick="delete_trans({{t.id}})"><span style="cursor:pointer; color:blue; text-decoration:underline;">Delete</span></button></td> </tr>índice.js
function delete_trans(id) { fetch(`/del_trans/${id}`, { method: 'PUT', body: JSON.stringify({ trans_id: id }) }); document.querySelector('#trans-' + id).style.display = 'none'; }