Louis Mazin 7677667d0b nice
2026-10-13 18:32:32 +02:00

48 lines
3.2 KiB
Python

from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = []
operations = [
migrations.CreateModel(name='Resource', fields=[
('id', models.BigAutoField(primary_key=True, serialize=False)),
('title', models.CharField(max_length=220)),
('description', models.CharField(blank=True, max_length=400)),
('category', models.CharField(choices=[('svt-seconde', 'SVT — Seconde'), ('svt-premiere', 'SVT — Spécialité Première'), ('svt-terminale', 'SVT — Spécialité Terminale'), ('bph', 'BPH — ST2S'), ('sbm', 'SBM — IFSI'), ('stl-premiere', '3 BIO — Première STL'), ('stl-terminale', '3 BIO — Terminale STL')], db_index=True, max_length=32)),
('kind', models.CharField(choices=[('pdf', 'Document PDF'), ('video', 'Vidéo'), ('link', 'Lien externe')], default='pdf', max_length=12)),
('url', models.URLField(max_length=1000)),
('published', models.BooleanField(db_index=True, default=True)),
('position', models.PositiveIntegerField(default=0)),
('created_at', models.DateTimeField(auto_now_add=True)),
], options={'ordering': ['category', 'position', 'id'], 'verbose_name': 'Ressource', 'verbose_name_plural': 'Ressources'}),
migrations.CreateModel(name='Testimonial', fields=[
('id', models.BigAutoField(primary_key=True, serialize=False)),
('author', models.CharField(max_length=100)),
('description', models.CharField(blank=True, max_length=120)),
('quote', models.TextField(max_length=1500)),
('published', models.BooleanField(default=True)),
('position', models.PositiveIntegerField(default=0)),
], options={'ordering': ['position', '-id'], 'verbose_name': 'Avis', 'verbose_name_plural': 'Avis'}),
migrations.CreateModel(name='ContactMessage', fields=[
('id', models.BigAutoField(primary_key=True, serialize=False)),
('name', models.CharField(max_length=100)),
('email', models.EmailField(max_length=254)),
('phone', models.CharField(blank=True, max_length=35)),
('level', models.CharField(blank=True, max_length=100)),
('message', models.TextField(max_length=3000)),
('accepted_privacy', models.BooleanField(default=False)),
('created_at', models.DateTimeField(auto_now_add=True)),
('read', models.BooleanField(default=False)),
], options={'ordering': ['-created_at'], 'verbose_name': 'Message de contact', 'verbose_name_plural': 'Messages de contact'}),
migrations.CreateModel(name='Announcement', fields=[
('id', models.BigAutoField(primary_key=True, serialize=False)),
('title', models.CharField(max_length=150)),
('body', models.TextField(max_length=1200)),
('cta_label', models.CharField(default='Me contacter', max_length=70)),
('active', models.BooleanField(default=True)),
('starts_at', models.DateField(blank=True, null=True)),
('ends_at', models.DateField(blank=True, null=True)),
], options={'verbose_name': 'Annonce / offre', 'verbose_name_plural': 'Annonces / offres'}),
]