You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
1 month ago | |
|---|---|---|
| crossapp | 1 month ago | |
| main | 1 month ago | |
| static | 1 year ago | |
| .gitignore | 1 month ago | |
| Dockerfile | 1 year ago | |
| README.md | 1 month ago | |
| conf.env | 1 month ago | |
| manage.py | 1 year ago | |
| requirements.txt | 1 year ago | |
README.md
CrossApp
Application Django pour l’enregistrement des temps de courses des coureurs.
Fonctionnalités principales
- Gestion des courses (création, historique, vue course)
- Scan QR code (html5-qrcode)
- Génération de dossards PDF
- Export des résultats/stats customisés en CSV/PDF
- Module admin Django
Installation
- Créez et activez un environnement virtuel Python
- Installez les dépendances :
pip install -r requirements.txt - Appliquez les migrations :
python manage.py makemigrations main python manage.py migrate - Créez un superutilisateur :
python manage.py createsuperuser - Lancez le serveur :
python manage.py runserver 0.0.0.0:8000 - Accès à l'interface admin depuis :
https://USER:PORT/admin
Tester en HTTPS en local avec Daphne
ATTENTION ! L'utilisation de la caméra pour scanner les QR codes nécessite que le site soit servi en HTTPS. Pour tester en local, vous pouvez générer un certificat autosigné et lancer Daphne avec TLS comme expliqué ci-dessous. Le certificat autosigné n'est pas destiné à un usage en production.
- Générez un certificat autosigné pour
localhost:mkdir -p certs openssl req -x509 -newkey rsa:2048 -nodes -keyout certs/localhost.key -out certs/localhost.crt -days 365 -subj "/CN=localhost" -addext "subjectAltName=DNS:localhost,IP:127.0.0.1" - Si vous utilisez la connexion ou l'administration, ajoutez cette origine dans
conf.envafin que la protection CSRF accepte les requêtes HTTPS :DJANGO_CSRF_TRUSTED_ORIGINS=https://localhost,https://127.0.0.1 - Collectez les fichiers statiques puis lancez Daphne avec TLS :
python manage.py collectstatic --noinput daphne -e ssl:8443:interface=0.0.0.0:privateKey=certs/localhost.key:certKey=certs/localhost.crt crossapp.asgi:application - Ouvrez https://localhost:8443. Le navigateur affichera un avertissement car le certificat est autosigné ; c'est attendu pour un test local.
Les certificats sont ignorés par Git. Ce certificat convient à localhost et 127.0.0.1 ; pour tester depuis un autre appareil ou avec une adresse IP différente, générez un certificat contenant cette adresse dans subjectAltName et ajoutez son origine HTTPS à DJANGO_CSRF_TRUSTED_ORIGINS.
Fonctionnalités interface admin
- Gestion des coureurs (ajout, modification, suppression)
- Import en masse des coureurs dans la rubrique "Coureurs" via CSV ou depuis export Pronote