File size: 1,223 Bytes
b756f0e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
from django.contrib import admin
from .models import ExamSchedule
from django.http import HttpResponse
# Register your models here.

class ExamScheduleAdmin(admin.ModelAdmin):
    list_display = ('student_name', 'student_id', 'exam_date', 'room_number', 'subject_name', 'subject_code', 'seat_Number')
    search_fields = ('student_name', 'student_id', 'subject_name')
    list_filter = ('exam_date', 'room_number')
    ordering = ('exam_date', 'student_name')
    list_per_page = 500
    actions = ['export_as_csv']

    def export_as_csv(self, request, queryset):
        import csv
        response = HttpResponse(content_type='text/csv')
        response['Content-Disposition'] = 'attachment; filename="exam_schedule.csv"'
        writer = csv.writer(response)
        writer.writerow(['student_name', 'student_id', 'exam_date', 'room_number', 'subject_name', 'subject_code', 'seat_Number'])
        for schedule in queryset:
            writer.writerow([schedule.student_name, schedule.student_id, schedule.exam_date, schedule.room_number, schedule.subject_name, schedule.subject_code, schedule.seat_Number])
        return response
    

admin.site.register(ExamSchedule, ExamScheduleAdmin)