.env pour les secrets.env.example comme modèle.gitignore pour protéger les secretssettings.py pour utiliser les variables d'environnementrequirements.txt avec Django 5.1 LTS# Créer un environnement virtuel (si pas déjà fait)
python3 -m venv venv
source venv/bin/activate # Sur Mac/Linux
# Installer les dépendances
pip install -r requirements.txt
La SECRET_KEY actuelle est exposée dans Git. Générez-en une nouvelle :
python3 -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"
Copiez la clé générée et remplacez-la dans votre fichier .env.
python manage.py makemigrations
python manage.py migrate
python manage.py runserver
Visitez http://127.0.0.1:8000/blog/ pour vérifier que tout fonctionne.
Vérifiez la compatibilité avec Django 5.1. Si problème :
pip install --upgrade django-trumbowyg
blog/models.py et core/models.pySupprimer les méthodes __unicode__ (Python 2) :
# ❌ À SUPPRIMER
def __unicode__(self):
return self.cb_titre
# ✅ Garder seulement
def __str__(self):
return '%s' % (self.cb_titre)
Si erreurs avec les dates, importer :
from django.utils import timezone
Quand vous déployez en production, modifiez .env :
SECRET_KEY=votre-nouvelle-cle-secrete-generee
DEBUG=False
ALLOWED_HOSTS=votre-domaine.com,www.votre-domaine.com
Et décommentez dans settings.py :
SECURE_SSL_REDIRECT = True
SESSION_COOKIE_SECURE = True
CSRF_COOKIE_SECURE = True
SECURE_BROWSER_XSS_FILTER = True
SECURE_CONTENT_TYPE_NOSNIFF = True
X_FRAME_OPTIONS = 'DENY'
pip install python-dotenv
Vérifiez que DIRS dans TEMPLATES pointe vers les bons dossiers.
python manage.py collectstatic