feat: add is_published flag to assignments
This commit is contained in:
+13
-3
@@ -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):
|
||||
|
||||
Reference in New Issue
Block a user