Compare commits

...

2 次程式碼提交

共有 6 個檔案被更改,包括 77 行新增11 行删除
分割檢視
  1. +1
    -1
      .gitignore
  2. 二進制
     
  3. +1
    -1
      site_eica/site_eica/settings.py
  4. +22
    -2
      site_eica/valves/admin.py
  5. +45
    -0
      site_eica/valves/migrations/0002_auto_20211027_1021.py
  6. +8
    -7
      site_eica/valves/models.py

site_eica/.gitignore → .gitignore 查看文件

@@ -1,5 +1,4 @@
# ---> Django
db.sqlite3
media/
# ---> Python
# Byte-compiled / optimized / DLL files
@@ -131,3 +130,4 @@ dmypy.json

# Pyre type checker
.pyre/


二進制
查看文件


+ 1
- 1
site_eica/site_eica/settings.py 查看文件

@@ -106,7 +106,7 @@ AUTH_PASSWORD_VALIDATORS = [

LANGUAGE_CODE = 'fr-fr'

TIME_ZONE = 'EUROPE/Brussels'
TIME_ZONE = 'Europe/Brussels'

USE_I18N = True



+ 22
- 2
site_eica/valves/admin.py 查看文件

@@ -5,14 +5,34 @@ from .models import Classe, Eleve, Message, Resultat

class ResultatInline(admin.TabularInline):
model = Resultat
extra = 1
extra = 0
classes = ["collapse"]

class MessageInline(admin.TabularInline):
model = Message
extra = 0


class EleveAdmin(admin.ModelAdmin):
list_display = ['nom_eleve', 'prenom_eleve']

class ClasseAdmin(admin.ModelAdmin):
fieldsets = (
(None, {
"fields": (
[('nom_classe','annee_scolaire'),'code_acces']
),
}),
('Élèves', {
"fields": (
['eleves']
),
"classes": ["collapse"],
})
)
filter_horizontal = ('eleves',)
inlines = [ResultatInline]
inlines = [ResultatInline, MessageInline]
admin.site.register(Eleve, EleveAdmin)
admin.site.register(Classe, ClasseAdmin)


+ 45
- 0
site_eica/valves/migrations/0002_auto_20211027_1021.py 查看文件

@@ -0,0 +1,45 @@
# Generated by Django 3.2.8 on 2021-10-27 08:21

from django.db import migrations, models
import django.db.models.deletion


class Migration(migrations.Migration):

dependencies = [
('valves', '0001_initial'),
]

operations = [
migrations.RemoveField(
model_name='classe',
name='nom_annee',
),
migrations.AddField(
model_name='classe',
name='nom_classe',
field=models.CharField(default='classe exemple', max_length=50, verbose_name='Nom de la classe'),
preserve_default=False,
),
migrations.AddField(
model_name='message',
name='classe',
field=models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to='valves.classe', verbose_name='classe'),
preserve_default=False,
),
migrations.AlterField(
model_name='classe',
name='annee_scolaire',
field=models.CharField(max_length=10, verbose_name='Année scolaire'),
),
migrations.AlterField(
model_name='eleve',
name='phone',
field=models.CharField(max_length=13, verbose_name='Numéro de GSM'),
),
migrations.AlterField(
model_name='message',
name='contenu_message',
field=models.CharField(max_length=160, verbose_name='Contenu du message'),
),
]

+ 8
- 7
site_eica/valves/models.py 查看文件

@@ -1,12 +1,11 @@
from django.db import models
from django.db.models.deletion import CASCADE

# Create your models here.

class Eleve(models.Model):
nom_eleve = models.CharField("Nom de l'élève", max_length=50)
prenom_eleve = models.CharField("Prénom de l'élève", max_length=100)
phone = models.IntegerField("Numéro de téléphone")
phone = models.CharField("Numéro de GSM", max_length=13) # ex de numéro de GSM = 0032475123432
def __str__(self) :
return self.nom_eleve
@@ -14,15 +13,15 @@ class Eleve(models.Model):
class Classe(models.Model):
eleves = models.ManyToManyField(Eleve)
nom_annee = models.CharField("Nom de l'année", max_length=50)
annee_scolaire = models.CharField("Année scolaire", max_length=100)
nom_classe = models.CharField("Nom de la classe", max_length=50)
annee_scolaire = models.CharField("Année scolaire", max_length=10)
code_acces = models.CharField("Code d'accès", max_length=10)
def __str__(self):
return self.nom_annee
return self.nom_classe

class Resultat(models.Model):
res_classe = models.ForeignKey(Classe, on_delete=CASCADE)
res_classe = models.ForeignKey(Classe, on_delete=models.CASCADE)
nom_resultat = models.CharField("Nom du résultat", max_length=100)
fichier_resultat = models.FileField("Fichier")
date_resultat = models.DateField()
@@ -33,8 +32,10 @@ class Resultat(models.Model):

class Message(models.Model):
nom_message =models.CharField("Nom du message", max_length=100)
contenu_message = models.CharField("Contenu du message", max_length=200)
contenu_message = models.CharField("Contenu du message", max_length=160) # longueur d'un SMS classique
envoye = models.BooleanField("Envoyé")
# un message appartient à une classe
classe = models.ForeignKey("valves.Classe", verbose_name="classe", on_delete=models.CASCADE)

def __str__(self) :
return self.nom_message

Loading…
取消
儲存