feat: add is_published flag to assignments

This commit is contained in:
Dmitry Belan
2026-09-19 15:38:50 +03:00
parent a5a6e2c037
commit 8cf8e0d869
3 changed files with 17 additions and 5 deletions
+13 -3
View File
@@ -18,14 +18,24 @@ class QuestionInline(StackedInline):
@admin.register(Assignment)
class AssignmentAdmin(ModelAdmin):
list_display = ('title', 'subject', 'created_at')
list_display = ('title', 'subject', 'is_published', 'created_at')
list_display_links = ('title',)
list_filter = ('subject',)
list_filter = ('subject', 'is_published')
search_fields = ('title', 'description')
exclude = ('created_by',)
filter_horizontal = ('assigned_students',)
inlines = [QuestionInline]
actions = ['delete_selected_assignments']
actions = ['make_published', 'make_unpublished', 'delete_selected_assignments']
@admin.action(description="Опубликовать выбранные задания")
def make_published(self, request, queryset):
updated = queryset.update(is_published=True)
self.message_user(request, f"Опубликовано {updated} заданий.")
@admin.action(description="Скрыть выбранные задания (в черновик)")
def make_unpublished(self, request, queryset):
updated = queryset.update(is_published=False)
self.message_user(request, f"Скрыто {updated} заданий.")
@admin.action(description="Удалить выбранные задания")
def delete_selected_assignments(self, request, queryset):