From b5ffc2101a9846203e4af80f1cf983400e80e339 Mon Sep 17 00:00:00 2001 From: Claude Paroz Date: Tue, 29 Aug 2017 16:25:34 +0200 Subject: [PATCH] Add option_ase field for students --- .../migrations/0002_add_student_option_ase.py | 24 +++++++++++++++++++ stages/models.py | 8 +++++++ 2 files changed, 32 insertions(+) create mode 100644 stages/migrations/0002_add_student_option_ase.py diff --git a/stages/migrations/0002_add_student_option_ase.py b/stages/migrations/0002_add_student_option_ase.py new file mode 100644 index 0000000..92ee4a3 --- /dev/null +++ b/stages/migrations/0002_add_student_option_ase.py @@ -0,0 +1,24 @@ +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('stages', '0001_squashed_0024_course_public_length2'), + ] + + operations = [ + migrations.CreateModel( + name='Option', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=100, unique=True, verbose_name='Nom')), + ], + ), + migrations.AddField( + model_name='student', + name='option_ase', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='stages.Option'), + ), + ] diff --git a/stages/models.py b/stages/models.py index a1d182f..3b95bd1 100644 --- a/stages/models.py +++ b/stages/models.py @@ -140,6 +140,13 @@ class Teacher(models.Model): return (self.calc_activity(), imputations) +class Option(models.Model): + name = models.CharField("Nom", max_length=100, unique=True) + + def __str__(self): + return self.name + + class Student(models.Model): ext_id = models.IntegerField(null=True, unique=True, verbose_name='ID externe') first_name = models.CharField(max_length=40, verbose_name='Prénom') @@ -154,6 +161,7 @@ class Student(models.Model): mobile = models.CharField(max_length=40, blank=True, verbose_name='Portable') email = models.EmailField(verbose_name='Courriel', blank=True) avs = models.CharField(max_length=15, blank=True, verbose_name='No AVS') + option_ase = models.ForeignKey(Option, null=True, blank=True, on_delete=models.SET_NULL) dispense_ecg = models.BooleanField(default=False) dispense_eps = models.BooleanField(default=False) soutien_dys = models.BooleanField(default=False)