Bootstap DataTable showing No matching records found Django

Я разрабатываю проект на Django, в котором пользователи могут обмениваться файлами. Я получаю данные (файлы) из базы данных и отображаю их в таблице на шаблоне и использую bootstrap DataTable для реализации функции поиска в моей таблице Но когда я ищу любую запись в DataTable, она показывает мне No matching records found.

Bootstrap CSS CDN

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.5.2/css/bootstrap.css">
<link rel="stylesheet" href="https://cdn.datatables.net/1.11.5/css/dataTables.bootstrap4.min.css">

Javascript CDN

 <script src="https://code.jquery.com/jquery-3.5.1.js"></script>
<script src="https://cdn.datatables.net/1.11.5/js/jquery.dataTables.min.js"></script>
<script src="https://cdn.datatables.net/1.11.5/js/dataTables.bootstrap4.min.js"></script>



<script>
$(document).ready(function() {
 $('#datatable').DataTable();

} );

</script> 

Код шаблона

<table id="datatable" class="table table-striped table-bordered" style="width:100%">
            <thead style="background-color : #607d8b;">
                <tr>
                    <th>S.No</th>
                    <th>Uploading Date</th>
                    <th>Branch</th>
                    <th>Subject</th>
                    <th>Download Notes</th>
                    <th>File Type</th>
                    <th>Description</th>
                    <th>Status</th>
                    <th>Action</th>
                </tr>
            </th

{% for i in notes %}
            <tbody>
            <tr>
              <td>{{forloop.counter}}</td>
                <td>{{i.uploadingdate}}</td>
                <td>{{i.branch}}</td>
                <td>{{i.subject}}</td>
                <td><a href="{{i.notesfile.url}}" class="btn btn-success" download>Download</a></td>
                <td>{{i.filetype}}</td>
                <td>{{i.description}}</td>
                <td>{{i.status}}</td>
            
                <td><a href="{% url 'dashboard:delete_mynotes' i.id %}" class="btn btn-danger" onclick="return confirm('Are your sure to Delete ?')">Delete</a></td>
                
            </tr>
            {% endfor %}
            </tbody>
</table>

Пожалуйста, помогите мне решить эту проблему. Заранее спасибо

Вы можете просто проверить Ajax[mdn-reference], короче говоря, ajax дает нам функциональность для выполнения CRUD операций на веб-странице без перезагрузки страницы.

В своем коде вы можете реализовать функцию удаления без перезагрузки страницы следующим образом:

Файл шаблона:

views.py

def all_notes(request):
    if not request.user.is_authenticated:
        return redirect('login_admin')
    notes = Upload_Notes.objects.all()
    context = {'notes': notes}
    return render(request, 'dashboard/all_notes.html', context)


def delete_notes(request, pk=None):
    if request.method == 'POST':
        if not request.user.is_authenticated:
            return redirect('login')
        print(request.POST.get('notesid'))
        notes = Upload_Notes.objects.get(id=int(request.POST.get('notesid')))
        notes.delete()
        return JsonResponse({'msg': 'Notes deleted successfully !'})

urls.py

from django.contrib import admin
from django.urls import path
from . import views
app_name = "dashboard"
urlpatterns = [
    path('all_notes/', views.all_notes, name='all_notes'),
    path('delete-records/', views.delete_notes, name='delete_notes')
]
Вернуться на верх