diff options
author | prathamesh | 2018-02-13 12:48:19 +0530 |
---|---|---|
committer | adityacp | 2018-03-21 17:32:41 +0530 |
commit | f06a5d2ffbb1a06320935841a4ba24720e651985 (patch) | |
tree | 8b72047eafb25abb2b4556ce4633c9b10375ef5b /grades/migrations | |
parent | 24bce890f07b6696ef1e910443a41a54840a6e90 (diff) | |
download | online_test-f06a5d2ffbb1a06320935841a4ba24720e651985.tar.gz online_test-f06a5d2ffbb1a06320935841a4ba24720e651985.tar.bz2 online_test-f06a5d2ffbb1a06320935841a4ba24720e651985.zip |
Change default grading system behaviour
Cannot edit default system.
Code as per PEP8 standards.
Updates grade after regrade or manual grading
Field change from total marks to percentage
Removed unused fields from grades app
Diffstat (limited to 'grades/migrations')
-rw-r--r-- | grades/migrations/0001_initial.py | 4 | ||||
-rw-r--r-- | grades/migrations/default_grading_system.py | 37 |
2 files changed, 22 insertions, 19 deletions
diff --git a/grades/migrations/0001_initial.py b/grades/migrations/0001_initial.py index 65d711e..04a3006 100644 --- a/grades/migrations/0001_initial.py +++ b/grades/migrations/0001_initial.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2018-02-02 06:20 +# Generated by Django 1.9.5 on 2018-02-12 11:12 from __future__ import unicode_literals from django.conf import settings @@ -20,7 +20,6 @@ class Migration(migrations.Migration): name='GradeRange', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('order', models.IntegerField(default=0)), ('lower_limit', models.FloatField()), ('upper_limit', models.FloatField()), ('grade', models.CharField(max_length=10)), @@ -33,7 +32,6 @@ class Migration(migrations.Migration): ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255, unique=True)), ('description', models.TextField(default='About the grading system!')), - ('can_be_used', models.BooleanField(default=False)), ('creator', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), diff --git a/grades/migrations/default_grading_system.py b/grades/migrations/default_grading_system.py index 1629d29..85390d6 100644 --- a/grades/migrations/default_grading_system.py +++ b/grades/migrations/default_grading_system.py @@ -1,24 +1,28 @@ from django.db import migrations + def create_default_system(apps, schema_editor): GradingSystem = apps.get_model('grades', 'GradingSystem') GradeRange = apps.get_model('grades', 'GradeRange') db = schema_editor.connection.alias - default_system = GradingSystem.objects.using(db).create(name='default', - can_be_used=True) - GradeRange.objects.using(db).create(system=default_system, order=1, lower_limit=0, - upper_limit=40, grade='F', description='Fail') - GradeRange.objects.using(db).create(system=default_system, order=2, lower_limit=40, - upper_limit=55, grade='P', description='Pass') - GradeRange.objects.using(db).create(system=default_system, order=3, lower_limit=55, - upper_limit=60, grade='C', description='Average') - GradeRange.objects.using(db).create(system=default_system, order=4, lower_limit=60, - upper_limit=75, grade='B', description='Satisfactory') - GradeRange.objects.using(db).create(system=default_system, order=5, lower_limit=75, - upper_limit=90, grade='A', description='Good') - GradeRange.objects.using(db).create(system=default_system, order=6, lower_limit=90, - upper_limit=101, grade='A+', description='Excellent') + default_system = GradingSystem.objects.using(db).create(name='default') + + graderanges_objects = [ + GradeRange(system=default_system, lower_limit=0, upper_limit=40, + grade='F', description='Fail'), + GradeRange(system=default_system, lower_limit=40, upper_limit=55, + grade='P', description='Pass'), + GradeRange(system=default_system, lower_limit=55, upper_limit=60, + grade='C', description='Average'), + GradeRange(system=default_system, lower_limit=60, upper_limit=75, + grade='B', description='Satisfactory'), + GradeRange(system=default_system, lower_limit=75, upper_limit=90, + grade='A', description='Good'), + GradeRange(system=default_system, lower_limit=90, upper_limit=101, + grade='A+', description='Excellent') + ] + GradeRange.objects.using(db).bulk_create(graderanges_objects) def delete_default_system(apps, schema_editor): @@ -32,5 +36,6 @@ def delete_default_system(apps, schema_editor): class Migration(migrations.Migration): - dependencies = [('grades', '0001_initial'),] - operations = [migrations.RunPython(create_default_system, delete_default_system),] + dependencies = [('grades', '0001_initial'), ] + operations = [migrations.RunPython(create_default_system, + delete_default_system), ] |