diff --git a/stages/admin.py b/stages/admin.py index 532929f..58d6bbb 100644 --- a/stages/admin.py +++ b/stages/admin.py @@ -95,7 +95,7 @@ class StudentAdmin(admin.ModelAdmin): ordering = ('last_name', 'first_name') list_filter = (('archived', ArchivedListFilter), ('klass', KlassRelatedListFilter)) search_fields = ('last_name', 'first_name', 'pcode', 'city', 'klass__name') - autocomplete_fields = ('corporation', 'instructor', 'supervisor', 'mentor') + autocomplete_fields = ('corporation', 'instructor', 'supervisor', 'mentor', 'expert') readonly_fields = ('report_sem1_sent', 'report_sem2_sent') fields = (('last_name', 'first_name', 'ext_id'), ('street', 'pcode', 'city', 'district'), ('email', 'tel', 'mobile'), ('gender', 'avs', 'birth_date'), @@ -103,7 +103,8 @@ class StudentAdmin(admin.ModelAdmin): ('klass', 'option_ase'), ('report_sem1', 'report_sem1_sent'), ('report_sem2', 'report_sem2_sent'), - ('corporation', 'instructor', 'supervisor', 'mentor')) + ('corporation', 'instructor',), + ('supervisor', 'mentor', 'expert')) actions = ['archive'] def archive(self, request, queryset): @@ -135,6 +136,7 @@ class CorpContactAdmin(admin.ModelAdmin): qs, distinct = super().get_search_results(request, qs, term) return qs.exclude(archived=True), distinct + class ContactInline(admin.StackedInline): model = CorpContact fields = (('title', 'last_name', 'first_name'), diff --git a/stages/migrations/0007_add_student_expert.py b/stages/migrations/0007_add_student_expert.py new file mode 100644 index 0000000..bfbadcd --- /dev/null +++ b/stages/migrations/0007_add_student_expert.py @@ -0,0 +1,16 @@ +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('stages', '0006_student_supervisor_mentor'), + ] + + operations = [ + migrations.AddField( + model_name='student', + name='expert', + field=models.ForeignKey(blank=True, null=True, on_delete=models.deletion.SET_NULL, related_name='rel_expert', to='stages.CorpContact', verbose_name='Expert'), + ), + ] diff --git a/stages/models.py b/stages/models.py index 97cff7d..a93be43 100644 --- a/stages/models.py +++ b/stages/models.py @@ -182,6 +182,8 @@ class Student(models.Model): null=True, blank=True, on_delete=models.SET_NULL) mentor = models.ForeignKey('CorpContact', related_name='rel_mentor', verbose_name='Mentor', null=True, blank=True, on_delete=models.SET_NULL) + expert = models.ForeignKey('CorpContact', related_name='rel_expert', verbose_name='Expert', + null=True, blank=True, on_delete=models.SET_NULL) klass = models.ForeignKey(Klass, verbose_name='Classe', blank=True, null=True, on_delete=models.PROTECT) report_sem1 = models.FileField('Bulletin 1er sem.', null=True, blank=True, upload_to='bulletins')