Completed Student/Referent fields

This commit is contained in:
Claude Paroz 2017-07-11 23:15:00 +02:00
parent df8f520b86
commit 673f88e232
3 changed files with 80 additions and 5 deletions

View file

@ -28,8 +28,9 @@ class ArchivedListFilter(admin.BooleanFieldListFilter):
class KlassAdmin(admin.ModelAdmin):
list_display = ('name', 'section', 'level')
list_display = ('name', 'section')
ordering = ('name',)
list_filter = ('section', 'level',)
class TeacherAdmin(admin.ModelAdmin):
@ -41,8 +42,10 @@ class StudentAdmin(admin.ModelAdmin):
ordering = ('last_name', 'first_name')
list_filter = (('archived', ArchivedListFilter), 'klass')
search_fields = ('last_name', 'first_name', 'pcode', 'city', 'klass__name')
fields = (('last_name', 'first_name'), 'street', ('pcode', 'city'), 'email',
('tel', 'mobile'), ('birth_date', 'ext_id'), 'klass', 'archived')
fields = (('last_name', 'first_name', 'ext_id'), ('street', 'pcode', 'city', 'district'),
('email', 'tel', 'mobile'), ('avs', 'birth_date'),
('dispense_ecg', 'dispense_eps', 'soutien_dys'), ('klass', 'archived'),
('corporation', 'instructor'))
readonly_fields = ('ext_id',)
actions = ['archive']

View file

@ -0,0 +1,61 @@
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('stages', '0011_add_teacher_model'),
]
operations = [
migrations.AddField(
model_name='corporation',
name='district',
field=models.CharField(blank=True, max_length=20, verbose_name='Canton'),
),
migrations.AddField(
model_name='student',
name='avs',
field=models.CharField(blank=True, max_length=15, verbose_name='No AVS'),
),
migrations.AddField(
model_name='student',
name='corporation',
field=models.ForeignKey(blank=True, null=True, on_delete=models.deletion.SET_NULL, to='stages.Corporation', verbose_name='Employeur'),
),
migrations.AddField(
model_name='student',
name='dispense_ecg',
field=models.BooleanField(default=False),
),
migrations.AddField(
model_name='student',
name='dispense_eps',
field=models.BooleanField(default=False),
),
migrations.AddField(
model_name='student',
name='district',
field=models.CharField(blank=True, max_length=20, verbose_name='Canton'),
),
migrations.AddField(
model_name='student',
name='gender',
field=models.CharField(blank=True, max_length=3, verbose_name='Genre'),
),
migrations.AddField(
model_name='student',
name='instructor',
field=models.ForeignKey(blank=True, null=True, on_delete=models.deletion.SET_NULL, to='stages.CorpContact', verbose_name='FEE/FPP'),
),
migrations.AddField(
model_name='student',
name='soutien_dys',
field=models.BooleanField(default=False),
),
migrations.AlterField(
model_name='student',
name='birth_date',
field=models.DateField(blank=True, verbose_name='Date de naissance'),
),
]

View file

@ -83,13 +83,23 @@ 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')
last_name = models.CharField(max_length=40, verbose_name='Nom')
birth_date = models.DateField(verbose_name='Date de naissance')
gender = models.CharField(max_length=3, blank=True, verbose_name='Genre')
birth_date = models.DateField(blank=True, verbose_name='Date de naissance')
street = models.CharField(max_length=150, blank=True, verbose_name='Rue')
pcode = models.CharField(max_length=4, verbose_name='Code postal')
city = models.CharField(max_length=40, verbose_name='Localité')
district = models.CharField(max_length=20, blank=True, verbose_name='Canton')
tel = models.CharField(max_length=40, blank=True, verbose_name='Téléphone')
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')
dispense_ecg = models.BooleanField(default=False)
dispense_eps = models.BooleanField(default=False)
soutien_dys = models.BooleanField(default=False)
corporation = models.ForeignKey('Corporation', null=True, blank=True,
on_delete=models.SET_NULL, verbose_name='Employeur')
instructor = models.ForeignKey('CorpContact', null=True, blank=True,
on_delete=models.SET_NULL, verbose_name='FEE/FPP')
klass = models.ForeignKey(Klass, verbose_name='Classe', blank=True, null=True,
on_delete=models.SET_NULL)
archived = models.BooleanField(default=False, verbose_name='Archivé')
@ -158,6 +168,7 @@ class Corporation(models.Model):
ext_id = models.IntegerField(null=True, blank=True, verbose_name='ID externe')
name = models.CharField(max_length=100, verbose_name='Nom', unique=True)
short_name = models.CharField(max_length=40, blank=True, verbose_name='Nom court')
district = models.CharField(max_length=20, blank=True, verbose_name='Canton')
parent = models.ForeignKey('self', null=True, blank=True, verbose_name='Institution mère',
on_delete=models.SET_NULL)
sector = models.CharField(max_length=40, blank=True, verbose_name='Secteur')
@ -187,7 +198,7 @@ class CorpContact(models.Model):
title = models.CharField(max_length=40, blank=True, verbose_name='Civilité')
first_name = models.CharField(max_length=40, blank=True, verbose_name='Prénom')
last_name = models.CharField(max_length=40, verbose_name='Nom')
role = models.CharField(max_length=40, verbose_name='Fonction', blank=True)
role = models.CharField(max_length=40, blank=True, verbose_name='Fonction')
tel = models.CharField(max_length=20, blank=True, verbose_name='Téléphone')
email = models.CharField(max_length=100, blank=True, verbose_name='Courriel')
archived = models.BooleanField(default=False, verbose_name='Archivé')