diff --git a/src/adega/settings.py b/src/adega/settings.py index 9c35cda68fb1f72c28ab8446172af0acbe432c44..78575463411b010d51f51a41900eb243263df7e9 100644 --- a/src/adega/settings.py +++ b/src/adega/settings.py @@ -42,6 +42,7 @@ INSTALLED_APPS = [ 'degree.apps.DegreeConfig', 'klass.apps.KlassConfig', 'student.apps.StudentConfig', + 'teacher.apps.TeacherConfig', ] MIDDLEWARE = [ diff --git a/src/student/migrations/0002_student_admission.py b/src/student/migrations/0002_student_admission.py new file mode 100644 index 0000000000000000000000000000000000000000..56e234e1e51faeedcaf60f2bd3617add37417d04 --- /dev/null +++ b/src/student/migrations/0002_student_admission.py @@ -0,0 +1,21 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('admission', '0001_initial'), + ('student', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='student', + name='admission', + field=models.ForeignKey(default=None, to='admission.Admission'), + preserve_default=False, + ), + ] diff --git a/src/student/models.py b/src/student/models.py index 16ee1f2b1ae0623c54d3b8c72f31d0171ee32a40..4ecb711ad7627f31670f4671ef735805c15220d6 100644 --- a/src/student/models.py +++ b/src/student/models.py @@ -2,7 +2,7 @@ from django.db import models from django.core.validators import MinValueValidator from degree.models import Curriculum from admission.models import Admission -from utils.data import difference_semesters +from utils.data import difference_between_semesters # Create your models here. class Student(models.Model): @@ -26,5 +26,5 @@ class Student(models.Model): year_start = self.admission.year semester_start = self.admission.semester - difference = difference_semester(year_start, semester_start, year_end, semester_end) + difference = difference_between_semesters(year_start, semester_start, year_end, semester_end) return difference diff --git a/src/teacher/__init__.py b/src/teacher/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/teacher/admin.py b/src/teacher/admin.py new file mode 100644 index 0000000000000000000000000000000000000000..8c38f3f3dad51e4585f3984282c2a4bec5349c1e --- /dev/null +++ b/src/teacher/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/src/teacher/apps.py b/src/teacher/apps.py new file mode 100644 index 0000000000000000000000000000000000000000..0d48caad8e3b01cfadf539f308f40336fb40d553 --- /dev/null +++ b/src/teacher/apps.py @@ -0,0 +1,5 @@ +from django.apps import AppConfig + + +class TeacherConfig(AppConfig): + name = 'teacher' diff --git a/src/teacher/migrations/0001_initial.py b/src/teacher/migrations/0001_initial.py new file mode 100644 index 0000000000000000000000000000000000000000..24337bc25bad9d3ccbcda9e98353e41d39d47ac7 --- /dev/null +++ b/src/teacher/migrations/0001_initial.py @@ -0,0 +1,29 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.3 on 2017-07-31 13:44 +from __future__ import unicode_literals + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ('degree', '0001_initial'), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ] + + operations = [ + migrations.CreateModel( + name='Teacher', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('coordinations', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='coordinators', to='degree.Degree')), + ('degrees', models.ManyToManyField(related_name='teachers', to='degree.Degree')), + ('user', models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + ] diff --git a/src/teacher/migrations/__init__.py b/src/teacher/migrations/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/teacher/models.py b/src/teacher/models.py new file mode 100644 index 0000000000000000000000000000000000000000..5ba8889d07f91709ed8f4a40586659c40757e70d --- /dev/null +++ b/src/teacher/models.py @@ -0,0 +1,10 @@ +from __future__ import unicode_literals + +from django.db import models +from django.contrib.auth.models import User + +# Create your models here. +class Teacher(models.Model): + user = models.OneToOneField(User, null=True) + degrees = models.ManyToManyField('degree.Degree', related_name="teachers") + coordinations = models.ForeignKey('degree.Degree', related_name="coordinators", null=True, blank=True) diff --git a/src/teacher/tests.py b/src/teacher/tests.py new file mode 100644 index 0000000000000000000000000000000000000000..7ce503c2dd97ba78597f6ff6e4393132753573f6 --- /dev/null +++ b/src/teacher/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/src/teacher/views.py b/src/teacher/views.py new file mode 100644 index 0000000000000000000000000000000000000000..91ea44a218fbd2f408430959283f0419c921093e --- /dev/null +++ b/src/teacher/views.py @@ -0,0 +1,3 @@ +from django.shortcuts import render + +# Create your views here.