forked from ScoDoc/ScoDoc
Specify server-side SQL default values
This commit is contained in:
parent
a34ab976e9
commit
02df06c29a
@ -126,9 +126,9 @@ En tant qu'utilisateur `scodoc`:
|
|||||||
su scodoc # si besoin
|
su scodoc # si besoin
|
||||||
cd /opt/scodoc
|
cd /opt/scodoc
|
||||||
source venv/bin/activate
|
source venv/bin/activate
|
||||||
flask db init
|
#flask db init
|
||||||
flask db migrate -m "users and roles tables"
|
#flask db migrate -m "initial database"
|
||||||
flask db upgrade
|
#flask db upgrade
|
||||||
|
|
||||||
Puis initialisation de l'appli:
|
Puis initialisation de l'appli:
|
||||||
|
|
||||||
|
@ -69,7 +69,7 @@ class BilletAbsence(db.Model):
|
|||||||
# raison de l'absence:
|
# raison de l'absence:
|
||||||
description = db.Column(db.Text())
|
description = db.Column(db.Text())
|
||||||
# False: new, True: processed
|
# False: new, True: processed
|
||||||
etat = db.Column(db.Boolean(), default=False)
|
etat = db.Column(db.Boolean(), default=False, server_default="false")
|
||||||
entry_date = db.Column(db.DateTime(timezone=True), server_default=db.func.now())
|
entry_date = db.Column(db.DateTime(timezone=True), server_default=db.func.now())
|
||||||
# true si l'absence _pourrait_ etre justifiée
|
# true si l'absence _pourrait_ etre justifiée
|
||||||
justified = db.Column(db.Boolean(), default=False)
|
justified = db.Column(db.Boolean(), default=False, server_default="false")
|
||||||
|
@ -58,7 +58,9 @@ class Adresse(db.Model):
|
|||||||
telephone = db.Column(db.Text)
|
telephone = db.Column(db.Text)
|
||||||
telephonemobile = db.Column(db.Text)
|
telephonemobile = db.Column(db.Text)
|
||||||
fax = db.Column(db.Text)
|
fax = db.Column(db.Text)
|
||||||
typeadresse = db.Column(db.Text, default="domicile", nullable=False)
|
typeadresse = db.Column(
|
||||||
|
db.Text, default="domicile", server_default="domicile", nullable=False
|
||||||
|
)
|
||||||
description = db.Column(db.Text)
|
description = db.Column(db.Text)
|
||||||
|
|
||||||
|
|
||||||
|
@ -18,14 +18,14 @@ class NotesFormation(db.Model):
|
|||||||
acronyme = db.Column(db.String(SHORT_STR_LEN), nullable=False)
|
acronyme = db.Column(db.String(SHORT_STR_LEN), nullable=False)
|
||||||
titre = db.Column(db.Text(), nullable=False)
|
titre = db.Column(db.Text(), nullable=False)
|
||||||
titre_officiel = db.Column(db.Text(), nullable=False)
|
titre_officiel = db.Column(db.Text(), nullable=False)
|
||||||
version = db.Column(db.Integer, default=1)
|
version = db.Column(db.Integer, default=1, server_default="1")
|
||||||
formation_code = db.Column(
|
formation_code = db.Column(
|
||||||
db.String(SHORT_STR_LEN),
|
db.String(SHORT_STR_LEN),
|
||||||
server_default=db.text("notes_newid_fcod()"),
|
server_default=db.text("notes_newid_fcod()"),
|
||||||
nullable=False,
|
nullable=False,
|
||||||
)
|
)
|
||||||
# nb: la fonction SQL notes_newid_fcod doit être créée à part
|
# nb: la fonction SQL notes_newid_fcod doit être créée à part
|
||||||
type_parcours = db.Column(db.Integer, default=0)
|
type_parcours = db.Column(db.Integer, default=0, server_default="0")
|
||||||
code_specialite = db.Column(db.String(SHORT_STR_LEN))
|
code_specialite = db.Column(db.String(SHORT_STR_LEN))
|
||||||
|
|
||||||
|
|
||||||
@ -42,7 +42,7 @@ class NotesUE(db.Model):
|
|||||||
titre = db.Column(db.Text())
|
titre = db.Column(db.Text())
|
||||||
# Type d'UE: 0 normal ("fondamentale"), 1 "sport", 2 "projet et stage (LP)",
|
# Type d'UE: 0 normal ("fondamentale"), 1 "sport", 2 "projet et stage (LP)",
|
||||||
# 4 "élective"
|
# 4 "élective"
|
||||||
type = db.Column(db.Integer, default=0)
|
type = db.Column(db.Integer, default=0, server_default="0")
|
||||||
# Les UE sont "compatibles" (pour la capitalisation) ssi elles ont ^m code
|
# Les UE sont "compatibles" (pour la capitalisation) ssi elles ont ^m code
|
||||||
# note: la fonction SQL notes_newid_ucod doit être créée à part
|
# note: la fonction SQL notes_newid_ucod doit être créée à part
|
||||||
ue_code = db.Column(
|
ue_code = db.Column(
|
||||||
@ -51,7 +51,7 @@ class NotesUE(db.Model):
|
|||||||
nullable=False,
|
nullable=False,
|
||||||
)
|
)
|
||||||
ects = db.Column(db.Float) # nombre de credits ECTS
|
ects = db.Column(db.Float) # nombre de credits ECTS
|
||||||
is_external = db.Column(db.Boolean(), default=False)
|
is_external = db.Column(db.Boolean(), default=False, server_default="false")
|
||||||
# id de l'element pedagogique Apogee correspondant:
|
# id de l'element pedagogique Apogee correspondant:
|
||||||
code_apogee = db.Column(db.String(APO_CODE_STR_LEN))
|
code_apogee = db.Column(db.String(APO_CODE_STR_LEN))
|
||||||
# coef UE, utilise seulement si l'option use_ue_coefs est activée:
|
# coef UE, utilise seulement si l'option use_ue_coefs est activée:
|
||||||
@ -93,7 +93,7 @@ class NotesModule(db.Model):
|
|||||||
formation_id = db.Column(db.Integer, db.ForeignKey("notes_formations.id"))
|
formation_id = db.Column(db.Integer, db.ForeignKey("notes_formations.id"))
|
||||||
matiere_id = db.Column(db.Integer, db.ForeignKey("notes_matieres.id"))
|
matiere_id = db.Column(db.Integer, db.ForeignKey("notes_matieres.id"))
|
||||||
# pas un id mais le numéro du semestre: 1, 2, ...
|
# pas un id mais le numéro du semestre: 1, 2, ...
|
||||||
semestre_id = db.Column(db.Integer, nullable=False, default=1)
|
semestre_id = db.Column(db.Integer, nullable=False, default=1, server_default="1")
|
||||||
numero = db.Column(db.Integer) # ordre de présentation
|
numero = db.Column(db.Integer) # ordre de présentation
|
||||||
# id de l'element pedagogique Apogee correspondant:
|
# id de l'element pedagogique Apogee correspondant:
|
||||||
code_apogee = db.Column(db.String(APO_CODE_STR_LEN))
|
code_apogee = db.Column(db.String(APO_CODE_STR_LEN))
|
||||||
|
@ -20,26 +20,42 @@ class FormSemestre(db.Model):
|
|||||||
id = db.Column(db.Integer, primary_key=True)
|
id = db.Column(db.Integer, primary_key=True)
|
||||||
formsemestre_id = db.synonym("id")
|
formsemestre_id = db.synonym("id")
|
||||||
formation_id = db.Column(db.Integer, db.ForeignKey("notes_formations.id"))
|
formation_id = db.Column(db.Integer, db.ForeignKey("notes_formations.id"))
|
||||||
semestre_id = db.Column(db.Integer, nullable=False, default=1)
|
semestre_id = db.Column(db.Integer, nullable=False, default=1, server_default="1")
|
||||||
titre = db.Column(db.Text())
|
titre = db.Column(db.Text())
|
||||||
date_debut = db.Column(db.Date())
|
date_debut = db.Column(db.Date())
|
||||||
date_fin = db.Column(db.Date())
|
date_fin = db.Column(db.Date())
|
||||||
etat = db.Column(db.Boolean(), nullable=False, default=True) # False si verrouillé
|
etat = db.Column(
|
||||||
|
db.Boolean(), nullable=False, default=True, server_default="true"
|
||||||
|
) # False si verrouillé
|
||||||
modalite = db.Column(db.String(16), db.ForeignKey("notes_form_modalites.modalite"))
|
modalite = db.Column(db.String(16), db.ForeignKey("notes_form_modalites.modalite"))
|
||||||
# gestion compensation sem DUT:
|
# gestion compensation sem DUT:
|
||||||
gestion_compensation = db.Column(db.Boolean(), nullable=False, default=False)
|
gestion_compensation = db.Column(
|
||||||
|
db.Boolean(), nullable=False, default=False, server_default="false"
|
||||||
|
)
|
||||||
# ne publie pas le bulletin XML:
|
# ne publie pas le bulletin XML:
|
||||||
bul_hide_xml = db.Column(db.Boolean(), nullable=False, default=False)
|
bul_hide_xml = db.Column(
|
||||||
|
db.Boolean(), nullable=False, default=False, server_default="false"
|
||||||
|
)
|
||||||
# semestres decales (pour gestion jurys):
|
# semestres decales (pour gestion jurys):
|
||||||
gestion_semestrielle = db.Column(db.Boolean(), nullable=False, default=False)
|
gestion_semestrielle = db.Column(
|
||||||
|
db.Boolean(), nullable=False, default=False, server_default="false"
|
||||||
|
)
|
||||||
# couleur fond bulletins HTML:
|
# couleur fond bulletins HTML:
|
||||||
bul_bgcolor = db.Column(db.String(SHORT_STR_LEN), default="white")
|
bul_bgcolor = db.Column(
|
||||||
|
db.String(SHORT_STR_LEN), default="white", server_default="white"
|
||||||
|
)
|
||||||
# autorise resp. a modifier semestre:
|
# autorise resp. a modifier semestre:
|
||||||
resp_can_edit = db.Column(db.Boolean(), nullable=False, default=False)
|
resp_can_edit = db.Column(
|
||||||
|
db.Boolean(), nullable=False, default=False, server_default="false"
|
||||||
|
)
|
||||||
# autorise resp. a modifier slt les enseignants:
|
# autorise resp. a modifier slt les enseignants:
|
||||||
resp_can_change_ens = db.Column(db.Boolean(), nullable=False, default=True)
|
resp_can_change_ens = db.Column(
|
||||||
|
db.Boolean(), nullable=False, default=True, server_default="true"
|
||||||
|
)
|
||||||
# autorise les ens a creer des evals:
|
# autorise les ens a creer des evals:
|
||||||
ens_can_edit_eval = db.Column(db.Boolean(), nullable=False, default=False)
|
ens_can_edit_eval = db.Column(
|
||||||
|
db.Boolean(), nullable=False, default=False, server_default="False"
|
||||||
|
)
|
||||||
# code element semestre Apogee, eg VRTW1 ou V2INCS4,V2INLS4
|
# code element semestre Apogee, eg VRTW1 ou V2INCS4,V2INLS4
|
||||||
elt_sem_apo = db.Column(db.String(APO_CODE_STR_LEN))
|
elt_sem_apo = db.Column(db.String(APO_CODE_STR_LEN))
|
||||||
# code element annee Apogee, eg VRT1A ou V2INLA,V2INCA
|
# code element annee Apogee, eg VRT1A ou V2INLA,V2INCA
|
||||||
@ -176,7 +192,7 @@ class NotesFormsemestreCustomMenu(db.Model):
|
|||||||
)
|
)
|
||||||
title = db.Column(db.Text())
|
title = db.Column(db.Text())
|
||||||
url = db.Column(db.Text())
|
url = db.Column(db.Text())
|
||||||
idx = db.Column(db.Integer, default=0) # rang dans le menu
|
idx = db.Column(db.Integer, default=0, server_default="0") # rang dans le menu
|
||||||
|
|
||||||
|
|
||||||
class NotesFormsemestreInscription(db.Model):
|
class NotesFormsemestreInscription(db.Model):
|
||||||
@ -265,10 +281,16 @@ class NotesEvaluation(db.Model):
|
|||||||
description = db.Column(db.Text)
|
description = db.Column(db.Text)
|
||||||
note_max = db.Column(db.Float)
|
note_max = db.Column(db.Float)
|
||||||
coefficient = db.Column(db.Float)
|
coefficient = db.Column(db.Float)
|
||||||
visibulletin = db.Column(db.Boolean, nullable=False, default=True)
|
visibulletin = db.Column(
|
||||||
publish_incomplete = db.Column(db.Boolean, nullable=False, default=False)
|
db.Boolean, nullable=False, default=True, server_default="true"
|
||||||
|
)
|
||||||
|
publish_incomplete = db.Column(
|
||||||
|
db.Boolean, nullable=False, default=False, server_default="false"
|
||||||
|
)
|
||||||
# type d'evaluation: False normale, True rattrapage:
|
# type d'evaluation: False normale, True rattrapage:
|
||||||
evaluation_type = db.Column(db.Boolean, nullable=False, default=False)
|
evaluation_type = db.Column(
|
||||||
|
db.Boolean, nullable=False, default=False, server_default="false"
|
||||||
|
)
|
||||||
# ordre de presentation (par défaut, le plus petit numero
|
# ordre de presentation (par défaut, le plus petit numero
|
||||||
# est la plus ancienne eval):
|
# est la plus ancienne eval):
|
||||||
numero = db.Column(db.Integer)
|
numero = db.Column(db.Integer)
|
||||||
|
@ -26,8 +26,12 @@ class Partition(db.Model):
|
|||||||
partition_name = db.Column(db.String(SHORT_STR_LEN))
|
partition_name = db.Column(db.String(SHORT_STR_LEN))
|
||||||
# numero = ordre de presentation)
|
# numero = ordre de presentation)
|
||||||
numero = db.Column(db.Integer)
|
numero = db.Column(db.Integer)
|
||||||
bul_show_rank = db.Column(db.Boolean(), nullable=False, default=False)
|
bul_show_rank = db.Column(
|
||||||
show_in_lists = db.Column(db.Boolean(), nullable=False, default=True)
|
db.Boolean(), nullable=False, default=False, server_default="false"
|
||||||
|
)
|
||||||
|
show_in_lists = db.Column(
|
||||||
|
db.Boolean(), nullable=False, default=True, server_default="true"
|
||||||
|
)
|
||||||
|
|
||||||
def __init__(self, **kwargs):
|
def __init__(self, **kwargs):
|
||||||
super(Partition, self).__init__(**kwargs)
|
super(Partition, self).__init__(**kwargs)
|
||||||
|
@ -76,7 +76,7 @@ class ScolarFormsemestreValidation(db.Model):
|
|||||||
# dans plusieurs semestres (cas R&T IUTV v2)
|
# dans plusieurs semestres (cas R&T IUTV v2)
|
||||||
semestre_id = db.Column(db.Integer)
|
semestre_id = db.Column(db.Integer)
|
||||||
# Si UE validée dans le cursus d'un autre etablissement
|
# Si UE validée dans le cursus d'un autre etablissement
|
||||||
is_external = db.Column(db.Boolean, default=False)
|
is_external = db.Column(db.Boolean, default=False, server_default="false")
|
||||||
|
|
||||||
|
|
||||||
class ScolarAutorisationInscription(db.Model):
|
class ScolarAutorisationInscription(db.Model):
|
||||||
|
Loading…
Reference in New Issue
Block a user