Initial commit - clean project structure
This commit is contained in:
62
content/admin.py
Normal file
62
content/admin.py
Normal file
@@ -0,0 +1,62 @@
|
||||
from django.contrib import admin
|
||||
|
||||
from .models import (
|
||||
Choice, Grade, Lesson, Node, NodeProgress, Question, Unit, UserAnswer, UserLessonCompletion,
|
||||
)
|
||||
|
||||
|
||||
class ChoiceInline(admin.TabularInline):
|
||||
model = Choice
|
||||
extra = 1
|
||||
|
||||
|
||||
@admin.register(Grade)
|
||||
class GradeAdmin(admin.ModelAdmin):
|
||||
list_display = ('id', 'title', 'icon', 'color')
|
||||
|
||||
|
||||
@admin.register(Unit)
|
||||
class UnitAdmin(admin.ModelAdmin):
|
||||
list_display = ('id', 'title', 'grade', 'order')
|
||||
list_filter = ('grade',)
|
||||
|
||||
|
||||
@admin.register(Node)
|
||||
class NodeAdmin(admin.ModelAdmin):
|
||||
list_display = ('id', 'title', 'unit', 'order')
|
||||
list_filter = ('unit',)
|
||||
|
||||
|
||||
@admin.register(Lesson)
|
||||
class LessonAdmin(admin.ModelAdmin):
|
||||
list_display = ('id', 'title', 'node')
|
||||
list_filter = ('node',)
|
||||
|
||||
|
||||
@admin.register(Question)
|
||||
class QuestionAdmin(admin.ModelAdmin):
|
||||
list_display = ('id', 'prompt', 'lesson', 'type')
|
||||
list_filter = ('type', 'lesson')
|
||||
inlines = [ChoiceInline]
|
||||
|
||||
|
||||
@admin.register(UserLessonCompletion)
|
||||
class UserLessonCompletionAdmin(admin.ModelAdmin):
|
||||
list_display = ('id', 'user_id', 'lesson', 'correct_count', 'stars', 'xp_earned', 'coins_earned')
|
||||
list_filter = ('lesson',)
|
||||
|
||||
|
||||
@admin.register(UserAnswer)
|
||||
class UserAnswerAdmin(admin.ModelAdmin):
|
||||
list_display = ('id', 'user_id', 'question', 'choice', 'correct', 'xp_earned')
|
||||
list_filter = ('correct',)
|
||||
|
||||
|
||||
@admin.register(NodeProgress)
|
||||
class NodeProgressAdmin(admin.ModelAdmin):
|
||||
list_display = (
|
||||
'id', 'user_id', 'node', 'status', 'lessons_completed_count',
|
||||
'started_at', 'last_activity_at', 'completed_at',
|
||||
)
|
||||
list_filter = ('status', 'node__unit')
|
||||
search_fields = ('user_id',)
|
||||
Reference in New Issue
Block a user