Subjects per grade (math, calculus, geometry, stats, discrete), 5 new textbooks, 202 new islands, long islands split, hand-written figures and lesson texts for the new books
- content.Subject + Unit.subject, /api/home?subject=, tutor grounded in the chosen book - 5 new books ingested; ~1150 hand-written questions, islands named by hand - node_split: islands over 7 lessons split into parts of <=6 (lesson ids and progress kept) - Lesson.figures hand-authored and visually checked for 653 lessons of the new books; gen_lesson_figures got --subject and survives network errors - seed files re-exported Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -21,7 +21,7 @@
|
||||
from django.core.management.base import BaseCommand, CommandError
|
||||
from django.db import transaction
|
||||
|
||||
from content.models import Grade, Lesson, Node, Unit
|
||||
from content.models import Grade, Lesson, Node, Subject, Unit
|
||||
from rag.models import LessonChunk
|
||||
from rag.services.config import build_collection_name
|
||||
from rag.services.textbooks import TEXTBOOKS, get_textbook
|
||||
@@ -179,11 +179,17 @@ class Command(BaseCommand):
|
||||
title=grade_title, defaults={'icon': icon, 'color': color},
|
||||
)
|
||||
|
||||
# کتاب باید در جدولِ Subject باشد (migrationِ 0015 پنجتایی را میسازد؛ کتابِ تازه از ادمین).
|
||||
subject = Subject.objects.filter(title=book.subject).first()
|
||||
if subject is None:
|
||||
raise CommandError(
|
||||
f'کتابِ «{book.subject}» در جدولِ Subject نیست؛ از ادمین (محتوا ← کتابها) بسازید.'
|
||||
)
|
||||
counts = {'units': 0, 'nodes': 0, 'lessons': 0}
|
||||
for chapter, groups in plan:
|
||||
unit, _ = Unit.objects.update_or_create(
|
||||
grade=grade, title=chapter.title,
|
||||
defaults={'order': chapter.number},
|
||||
defaults={'order': chapter.number, 'subject': subject},
|
||||
)
|
||||
counts['units'] += 1
|
||||
|
||||
|
||||
Reference in New Issue
Block a user