@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
# -*- coding: utf-8 -*-
# Generated by Django 1.11.6 on 2018-01-11 17:32
# Generated by Django 1.11.6 on 2018-01-12 15:44
from __future__ import unicode_literals
from __future__ import unicode_literals
import django . contrib . postgres . fields
import django . contrib . postgres . fields
@ -38,65 +38,75 @@ class Migration(migrations.Migration):
} ,
} ,
) ,
) ,
migrations . CreateModel (
migrations . CreateModel (
name = ' Demand ' ,
name = ' Lesson ' ,
fields = [
fields = [
( ' token ' , models . UUIDField ( default = uuid . uuid4 , editable = False , primary_key = True , serialize = False , verbose_name = ' Токен ' ) ) ,
( ' token ' , models . UUIDField ( default = uuid . uuid4 , editable = False , primary_key = True , serialize = False , verbose_name = ' Токен ' ) ) ,
( ' name ' , models . CharField ( max_length = 31 , unique = True , verbose_name = ' Название ' ) ) ,
( ' title ' , models . CharField ( max_length = 255 , verbose_name = ' Название ' ) ) ,
( ' checker ' , models . CharField ( choices = [ ( ' student ' , ' student ' ) , ( ' teacher ' , ' teacher ' ) , ( ' support ' , ' support ' ) ] , default = ' teacher ' , max_length = 15 , verbose_name = ' Проверяющий ' ) ) ,
( ' description ' , models . TextField ( blank = True , null = True , verbose_name = ' Описание ' ) ) ,
( ' min_balls ' , models . SmallIntegerField ( default = 50 , verbose_name = ' Проходной бал ' ) ) ,
( ' video ' , models . TextField ( blank = True , null = True , verbose_name = ' Код видео ' ) ) ,
( ' material_tokens ' , django . contrib . postgres . fields . ArrayField ( base_field = models . CharField ( blank = True , max_length = 15 , verbose_name = ' Материалы урока ' ) , default = [ ] , size = None ) ) ,
( ' free ' , models . BooleanField ( default = False , verbose_name = ' Привилегии для узла не будут проверяться ' ) ) ,
( ' sort ' , models . SmallIntegerField ( unique = True ) ) ,
] ,
] ,
options = {
options = {
' verbose_name ' : ' Требования ' ,
' verbose_name ' : ' Урок ' ,
' verbose_name_plural ' : ' Требования ' ,
' verbose_name_plural ' : ' Уроки ' ,
' ordering ' : ( ' sort ' , ) ,
} ,
} ,
) ,
) ,
migrations . CreateModel (
migrations . CreateModel (
name = ' Field ' ,
name = ' LessonRequirement ' ,
fields = [
fields = [
( ' id ' , models . AutoField ( auto_created = True , primary_key = True , serialize = False , verbose_name = ' ID ' ) ) ,
( ' id ' , models . AutoField ( auto_created = True , primary_key = True , serialize = False , verbose_name = ' ID ' ) ) ,
( ' label ' , models . CharField ( max_length = 255 , verbose_name = ' Надпись у поля ' ) ) ,
( ' sort ' , models . SmallIntegerField ( default = 1 ) ) ,
( ' lesson ' , models . ForeignKey ( on_delete = django . db . models . deletion . CASCADE , to = ' courses.Lesson ' ) ) ,
] ,
options = {
' verbose_name ' : ' Порядок требований ' ,
' verbose_name_plural ' : ' Порядок требований ' ,
' ordering ' : ( ' sort ' , ) ,
} ,
) ,
migrations . CreateModel (
name = ' Question ' ,
fields = [
( ' id ' , models . AutoField ( auto_created = True , primary_key = True , serialize = False , verbose_name = ' ID ' ) ) ,
( ' text ' , models . TextField ( verbose_name = ' Вопрос ' ) ) ,
( ' type ' , models . CharField ( choices = [ ( ' text ' , ' text ' ) , ( ' char ' , ' char ' ) , ( ' boolean ' , ' boolean ' ) , ( ' file ' , ' file ' ) ] , default = ' char ' , max_length = 20 ) ) ,
( ' type ' , models . CharField ( choices = [ ( ' text ' , ' text ' ) , ( ' char ' , ' char ' ) , ( ' boolean ' , ' boolean ' ) , ( ' file ' , ' file ' ) ] , default = ' char ' , max_length = 20 ) ) ,
( ' multiple ' , models . BooleanField ( default = False ) ) ,
( ' multiple ' , models . BooleanField ( default = False ) ) ,
( ' null ' , models . BooleanField ( default = False ) ) ,
( ' null ' , models . BooleanField ( default = False ) ) ,
( ' answers ' , django . contrib . postgres . fields . ArrayField ( base_field = models . CharField ( max_length = 255 ) , blank = True , null = True , size = None ) ) ,
( ' balls ' , models . SmallIntegerField ( default = 100 , verbose_name = ' Вознаграждение ' ) ) ,
( ' balls ' , models . SmallIntegerField ( default = 100 , verbose_name = ' Вознаграждение ' ) ) ,
( ' match ' , models . CharField ( blank = True , max_length = 255 , null = True , verbose_name = ' Если не нулевое значение, то при точном сопоставлении даёт положителбный ответ ' ) ) ,
( ' demand ' , models . ForeignKey ( on_delete = django . db . models . deletion . CASCADE , to = ' courses.Demand ' ) ) ,
] ,
] ,
options = {
options = {
' verbose_name ' : ' Поле ' ,
' verbose_name ' : ' Вопрос ' ,
' verbose_name_plural ' : ' Поля ' ,
' verbose_name_plural ' : ' Вопросы ' ,
} ,
} ,
) ,
) ,
migrations . CreateModel (
migrations . CreateModel (
name = ' Lesson ' ,
name = ' Requirement ' ,
fields = [
fields = [
( ' token ' , models . UUIDField ( default = uuid . uuid4 , editable = False , primary_key = True , serialize = False , verbose_name = ' Токен ' ) ) ,
( ' token ' , models . UUIDField ( default = uuid . uuid4 , editable = False , primary_key = True , serialize = False , verbose_name = ' Токен ' ) ) ,
( ' title ' , models . CharField ( max_length = 255 , verbose_name = ' Название ' ) ) ,
( ' name ' , models . CharField ( max_length = 31 , unique = True , verbose_name = ' Название ' ) ) ,
( ' description ' , models . TextField ( blank = True , null = True , verbose_name = ' Описание ' ) ) ,
( ' checker ' , models . CharField ( choices = [ ( ' student ' , ' student ' ) , ( ' teacher ' , ' teacher ' ) , ( ' auto ' , ' auto ' ) ] , default = ' teacher ' , max_length = 15 , verbose_name = ' Проверяющий ' ) ) ,
( ' video ' , models . TextField ( blank = True , null = True , verbose_name = ' Код видео ' ) ) ,
( ' min_balls ' , models . SmallIntegerField ( default = 50 , verbose_name = ' Проходной бал ' ) ) ,
( ' material_tokens ' , django . contrib . postgres . fields . ArrayField ( base_field = models . CharField ( blank = True , max_length = 15 , verbose_name = ' Материалы урока ' ) , default = [ ] , size = None ) ) ,
( ' free ' , models . BooleanField ( default = False , verbose_name = ' Привилегии для узла не будут проверяться ' ) ) ,
( ' sort ' , models . SmallIntegerField ( unique = True ) ) ,
] ,
] ,
options = {
options = {
' verbose_name ' : ' Урок ' ,
' verbose_name ' : ' Требования ' ,
' verbose_name_plural ' : ' Уроки ' ,
' verbose_name_plural ' : ' Требования ' ,
' ordering ' : ( ' sort ' , ) ,
} ,
} ,
) ,
) ,
migrations . CreateModel (
migrations . CreateModel (
name = ' LessonDemand ' ,
name = ' RightAnswer ' ,
fields = [
fields = [
( ' id ' , models . AutoField ( auto_created = True , primary_key = True , serialize = False , verbose_name = ' ID ' ) ) ,
( ' id ' , models . AutoField ( auto_created = True , primary_key = True , serialize = False , verbose_name = ' ID ' ) ) ,
( ' sort ' , models . SmallIntegerField ( default = 1 ) ) ,
( ' text ' , models . TextField ( verbose_name = ' Верный ответ ' ) ) ,
( ' demand ' , models . ForeignKey ( on_delete = django . db . models . deletion . CASCADE , to = ' courses.Demand ' ) ) ,
( ' success_comment ' , models . TextField ( blank = True , null = True , verbose_name = ' Комментарий при верном ответе ' ) ) ,
( ' lesson ' , models . ForeignKey ( on_delete = django . db . models . deletion . CASCADE , to = ' courses.Lesson ' ) ) ,
( ' error_comment ' , models . TextField ( blank = True , null = True , verbose_name = ' Комментарий при ошибке ' ) ) ,
( ' question ' , models . OneToOneField ( on_delete = django . db . models . deletion . CASCADE , to = ' courses.Question ' ) ) ,
] ,
] ,
options = {
options = {
' verbose_name ' : ' Порядок требований ' ,
' verbose_name ' : ' Верный ответ ' ,
' verbose_name_plural ' : ' Порядок требований ' ,
' verbose_name_plural ' : ' Верные ответы ' ,
' ordering ' : ( ' sort ' , ) ,
} ,
} ,
) ,
) ,
migrations . CreateModel (
migrations . CreateModel (
@ -114,13 +124,23 @@ class Migration(migrations.Migration):
' verbose_name_plural ' : ' Темы ' ,
' verbose_name_plural ' : ' Темы ' ,
} ,
} ,
) ,
) ,
migrations . AddField (
model_name = ' question ' ,
name = ' requirement ' ,
field = models . ForeignKey ( on_delete = django . db . models . deletion . CASCADE , to = ' courses.Requirement ' ) ,
) ,
migrations . AddField (
model_name = ' lessonrequirement ' ,
name = ' requirement ' ,
field = models . ForeignKey ( on_delete = django . db . models . deletion . CASCADE , to = ' courses.Requirement ' ) ,
) ,
migrations . AddField (
migrations . AddField (
model_name = ' lesson ' ,
model_name = ' lesson ' ,
name = ' topic ' ,
name = ' topic ' ,
field = models . ForeignKey ( on_delete = django . db . models . deletion . CASCADE , to = ' courses.Topic ' , verbose_name = ' Тема ' ) ,
field = models . ForeignKey ( on_delete = django . db . models . deletion . CASCADE , to = ' courses.Topic ' , verbose_name = ' Тема ' ) ,
) ,
) ,
migrations . AlterUniqueTogether (
migrations . AlterUniqueTogether (
name = ' lessondemand ' ,
name = ' lessonrequirement ' ,
unique_together = set ( [ ( ' lesson ' , ' demand ' , ' sort ' ) ] ) ,
unique_together = set ( [ ( ' lesson ' , ' requirement ' , ' sort ' ) ] ) ,
) ,
) ,
]
]