Files
asugak/models.py
2024-06-11 22:29:55 +03:00

49 lines
2.3 KiB
Python

from flask_sqlalchemy import SQLAlchemy
from datetime import datetime
db = SQLAlchemy()
class CommissionPersons(db.Model):
id = db.Column(db.Integer, primary_key=True)
fio = db.Column(db.String(80), unique=True, nullable=False)
ispredsedatel = db.Column(db.Boolean, nullable=False, default=False)
isrecenzent = db.Column(db.Boolean, nullable=False, default=False)
issecretar = db.Column(db.Boolean, nullable=False, default=False)
class CommissionSostav(db.Model):
id = db.Column(db.Integer, primary_key=True)
predsedatel = db.Column(db.String(100), nullable=False)
uchastnik1=db.Column(db.String(100), nullable=False)
uchastnik2=db.Column(db.String(100), nullable=False)
uchastnik3=db.Column(db.String(100), nullable=False)
uchastnik4=db.Column(db.String(100), nullable=False)
secretar=db.Column(db.String(100), nullable=False)
class Rukovoditeli(db.Model):
id = db.Column(db.Integer, primary_key=True)
fio = db.Column(db.String(80), nullable=False)
canMagistr = db.Column(db.Boolean, nullable=False, default=False)
stepen = db.Column(db.String(80), nullable=False)
dolognost = db.Column(db.String(80), nullable=False)
class Studentus(db.Model):
id = db.Column(db.Integer, primary_key=True)
fio = db.Column(db.String(80), nullable=False)
vkrTheme = db.Column(db.String(80), nullable=False)
rucovoditel_id = db.Column(db.Integer, db.ForeignKey('rukovoditeli.id'), nullable=False)
konsultant_id = db.Column(db.Integer, db.ForeignKey('rukovoditeli.id'), nullable=False)
rucovoditel = db.relationship('Rukovoditeli', foreign_keys=[rucovoditel_id],
backref=db.backref('students_as_rucovoditel', lazy=True))
konsultant = db.relationship('Rukovoditeli', foreign_keys=[konsultant_id],
backref=db.backref('students_as_konsultant', lazy=True))
class CommissionZasedanie(db.Model):
id = db.Column(db.Integer, primary_key=True)
data = db.Column(db.DateTime, nullable=False)
commission_sostav_id = db.Column(db.Integer, db.ForeignKey('commission_sostav.id'), nullable=False)
commission_sostav = db.relationship('CommissionSostav', uselist=False, backref=db.backref('zasedanie', lazy=True))
students = db.relationship('Studentus', backref=db.backref('zasedanie', lazy=True))