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
|
||||
cd /opt/scodoc
|
||||
source venv/bin/activate
|
||||
flask db init
|
||||
flask db migrate -m "users and roles tables"
|
||||
flask db upgrade
|
||||
#flask db init
|
||||
#flask db migrate -m "initial database"
|
||||
#flask db upgrade
|
||||
|
||||
Puis initialisation de l'appli:
|
||||
|
||||
|
@ -69,7 +69,7 @@ class BilletAbsence(db.Model):
|
||||
# raison de l'absence:
|
||||
description = db.Column(db.Text())
|
||||
# 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())
|
||||
# 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)
|
||||
telephonemobile = 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)
|
||||
|
||||
|
||||
|
@ -18,14 +18,14 @@ class NotesFormation(db.Model):
|
||||
acronyme = db.Column(db.String(SHORT_STR_LEN), nullable=False)
|
||||
titre = 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(
|
||||
db.String(SHORT_STR_LEN),
|
||||
server_default=db.text("notes_newid_fcod()"),
|
||||
nullable=False,
|
||||
)
|
||||
# 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))
|
||||
|
||||
|
||||
@ -42,7 +42,7 @@ class NotesUE(db.Model):
|
||||
titre = db.Column(db.Text())
|
||||
# Type d'UE: 0 normal ("fondamentale"), 1 "sport", 2 "projet et stage (LP)",
|
||||
# 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
|
||||
# note: la fonction SQL notes_newid_ucod doit être créée à part
|
||||
ue_code = db.Column(
|
||||
@ -51,7 +51,7 @@ class NotesUE(db.Model):
|
||||
nullable=False,
|
||||
)
|
||||
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:
|
||||
code_apogee = db.Column(db.String(APO_CODE_STR_LEN))
|
||||
# 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"))
|
||||
matiere_id = db.Column(db.Integer, db.ForeignKey("notes_matieres.id"))
|
||||
# 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
|
||||
# id de l'element pedagogique Apogee correspondant:
|
||||
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)
|
||||
formsemestre_id = db.synonym("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())
|
||||
date_debut = 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"))
|
||||
# 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:
|
||||
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):
|
||||
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:
|
||||
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:
|
||||
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:
|
||||
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:
|
||||
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
|
||||
elt_sem_apo = db.Column(db.String(APO_CODE_STR_LEN))
|
||||
# code element annee Apogee, eg VRT1A ou V2INLA,V2INCA
|
||||
@ -176,7 +192,7 @@ class NotesFormsemestreCustomMenu(db.Model):
|
||||
)
|
||||
title = 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):
|
||||
@ -265,10 +281,16 @@ class NotesEvaluation(db.Model):
|
||||
description = db.Column(db.Text)
|
||||
note_max = db.Column(db.Float)
|
||||
coefficient = db.Column(db.Float)
|
||||
visibulletin = db.Column(db.Boolean, nullable=False, default=True)
|
||||
publish_incomplete = db.Column(db.Boolean, nullable=False, default=False)
|
||||
visibulletin = db.Column(
|
||||
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:
|
||||
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
|
||||
# est la plus ancienne eval):
|
||||
numero = db.Column(db.Integer)
|
||||
|
@ -26,8 +26,12 @@ class Partition(db.Model):
|
||||
partition_name = db.Column(db.String(SHORT_STR_LEN))
|
||||
# numero = ordre de presentation)
|
||||
numero = db.Column(db.Integer)
|
||||
bul_show_rank = db.Column(db.Boolean(), nullable=False, default=False)
|
||||
show_in_lists = db.Column(db.Boolean(), nullable=False, default=True)
|
||||
bul_show_rank = db.Column(
|
||||
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):
|
||||
super(Partition, self).__init__(**kwargs)
|
||||
|
@ -76,7 +76,7 @@ class ScolarFormsemestreValidation(db.Model):
|
||||
# dans plusieurs semestres (cas R&T IUTV v2)
|
||||
semestre_id = db.Column(db.Integer)
|
||||
# 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):
|
||||
|
Loading…
Reference in New Issue
Block a user