- note = get_object_or_404(Note, slug=note_slug, status=1)
- return render(request, 'note_detail.html', {'note': note})
\ No newline at end of file
+ note = get_object_or_404(Note, slug=note_slug) if request.user.is_staff else get_object_or_404(Note, slug=note_slug, status=1)
+ return render(request, 'note_detail.html', {'note': note})
+
+def archive_main(request):
+ notes_years = Note.objects.filter(status=1).annotate(created_year=ExtractYear('created_at')).values_list('created_year', flat=True).distinct().order_by('created_year')
+ return render(request, 'archive_main.html', {'years': notes_years})
+
+def archive_year(request, archive_year):
+ notes_months = Note.objects.filter(status=1, created_at__year=archive_year).annotate(created_month=ExtractMonth('created_at')).values_list('created_month', flat=True).distinct().order_by('created_month')
+ return render(request, 'archive_year.html', {'year': archive_year, 'months': notes_months})
+
+def archive_month(request, archive_year, archive_month):
+ notes = Note.objects.filter(status=1, created_at__year=archive_year, created_at__month=archive_month)
+ return render(request, 'archive_month.html', {'year': archive_year, 'month': archive_month, 'notes': notes})
\ No newline at end of file