Added Teacher model
This commit is contained in:
parent
e0a416a966
commit
df8f520b86
3 changed files with 74 additions and 2 deletions
|
|
@ -2,8 +2,10 @@ from django import forms
|
|||
from django.contrib import admin
|
||||
from django.db import models
|
||||
|
||||
from stages.models import (Student, Section, Level, Klass, Referent, Corporation,
|
||||
CorpContact, Domain, Period, Availability, Training)
|
||||
from stages.models import (
|
||||
Teacher, Student, Section, Level, Klass, Referent, Corporation,
|
||||
CorpContact, Domain, Period, Availability, Training,
|
||||
)
|
||||
|
||||
|
||||
class ArchivedListFilter(admin.BooleanFieldListFilter):
|
||||
|
|
@ -30,6 +32,10 @@ class KlassAdmin(admin.ModelAdmin):
|
|||
ordering = ('name',)
|
||||
|
||||
|
||||
class TeacherAdmin(admin.ModelAdmin):
|
||||
list_display = ('__str__', 'abrev', 'email')
|
||||
|
||||
|
||||
class StudentAdmin(admin.ModelAdmin):
|
||||
list_display = ('__str__', 'pcode', 'city', 'klass', 'archived')
|
||||
ordering = ('last_name', 'first_name')
|
||||
|
|
@ -176,6 +182,7 @@ admin.site.register(Level)
|
|||
admin.site.register(Klass, KlassAdmin)
|
||||
admin.site.register(Student, StudentAdmin)
|
||||
admin.site.register(Referent, ReferentAdmin)
|
||||
admin.site.register(Teacher, TeacherAdmin)
|
||||
admin.site.register(Corporation, CorporationAdmin)
|
||||
admin.site.register(CorpContact, CorpContactAdmin)
|
||||
admin.site.register(Domain)
|
||||
|
|
|
|||
42
stages/migrations/0011_add_teacher_model.py
Normal file
42
stages/migrations/0011_add_teacher_model.py
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.2 on 2017-07-11 23:05
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('stages', '0010_nullable_student_klass'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Teacher',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('civility', models.CharField(max_length=10, verbose_name='Civilité')),
|
||||
('first_name', models.CharField(max_length=40, verbose_name='Prénom')),
|
||||
('last_name', models.CharField(max_length=40, verbose_name='Nom')),
|
||||
('abrev', models.CharField(max_length=10, verbose_name='Sigle')),
|
||||
('birth_date', models.DateField(blank=True, verbose_name='Date de naissance')),
|
||||
('email', models.EmailField(blank=True, max_length=254, verbose_name='Courriel')),
|
||||
('contract', models.CharField(max_length=20, verbose_name='Contrat')),
|
||||
('rate', models.DecimalField(decimal_places=1, default=0.0, max_digits=4, verbose_name="Taux d'activité")),
|
||||
('ext_id', models.IntegerField(blank=True, null=True)),
|
||||
('previous_report', models.IntegerField(default=0, verbose_name='Report précédent')),
|
||||
('next_report', models.IntegerField(default=0, verbose_name='Report suivant')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Enseignant',
|
||||
'ordering': ('last_name', 'first_name'),
|
||||
},
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='klass',
|
||||
name='teacher',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='stages.Teacher', verbose_name='Maître de classe'),
|
||||
),
|
||||
]
|
||||
|
|
@ -48,6 +48,8 @@ class Klass(models.Model):
|
|||
name = models.CharField(max_length=10, verbose_name='Nom')
|
||||
section = models.ForeignKey(Section, verbose_name='Filière', on_delete=models.PROTECT)
|
||||
level = models.ForeignKey(Level, verbose_name='Niveau', on_delete=models.PROTECT)
|
||||
teacher = models.ForeignKey('Teacher', blank=True, null=True,
|
||||
on_delete=models.SET_NULL, verbose_name='Maître de classe')
|
||||
|
||||
class Meta:
|
||||
verbose_name = "Classe"
|
||||
|
|
@ -56,6 +58,27 @@ class Klass(models.Model):
|
|||
return self.name
|
||||
|
||||
|
||||
class Teacher(models.Model):
|
||||
civility = models.CharField(max_length=10, verbose_name='Civilité')
|
||||
first_name = models.CharField(max_length=40, verbose_name='Prénom')
|
||||
last_name = models.CharField(max_length=40, verbose_name='Nom')
|
||||
abrev = models.CharField(max_length=10, verbose_name='Sigle')
|
||||
birth_date = models.DateField(verbose_name='Date de naissance', blank=True)
|
||||
email = models.EmailField(verbose_name='Courriel', blank=True)
|
||||
contract = models.CharField(max_length=20, verbose_name='Contrat')
|
||||
rate = models.DecimalField(default=0.0, max_digits=4, decimal_places=1, verbose_name="Taux d'activité")
|
||||
ext_id = models.IntegerField(blank=True, null=True)
|
||||
previous_report = models.IntegerField(default=0, verbose_name='Report précédent')
|
||||
next_report = models.IntegerField(default=0, verbose_name='Report suivant')
|
||||
|
||||
class Meta:
|
||||
verbose_name='Enseignant'
|
||||
ordering = ('last_name', 'first_name')
|
||||
|
||||
def __str__(self):
|
||||
return '{0} {1}'.format(self.last_name, self.first_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')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue