Logo Khaganat

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
fr:webnel [2017/11/05 13:43] – [Documentation] Tycho Brahefr:webnel [2021/12/03 19:19] (Version actuelle) – modification externe 127.0.0.1
Ligne 2: Ligne 2:
  
 WebNeL est une application web développée en Python/Django dont le but est, dans le futur, de remplacer intégralement l'héritage PHP de Ryzom Core. Cette application utilise Django 2 et Python 3. WebNeL est une application web développée en Python/Django dont le but est, dans le futur, de remplacer intégralement l'héritage PHP de Ryzom Core. Cette application utilise Django 2 et Python 3.
- 
-<WRAP center round important>Django 2 est actuellement en cours de développement et seule une version alpha est disponible. Cependant, Django 2 devrait être stable d'ici la mise en production de WebNeL, il est donc logique de commencer à développer directement pour cette version plutôt que pour la version 1.</WRAP> 
  
 <WRAP center round info> <WRAP center round info>
Ligne 20: Ligne 18:
 TITLE: Modélisation de la base de données TITLE: Modélisation de la base de données
 PRIORITY: 1 PRIORITY: 1
-PROGRESS: 0%+PROGRESS: 20%
 DESCRIPTION: Cette étape consiste à créer les modèles Django de manière à ce que ces derniers utilisent directement la base de données déjà présente. DESCRIPTION: Cette étape consiste à créer les modèles Django de manière à ce que ces derniers utilisent directement la base de données déjà présente.
 </task> </task>
 +
 +Chaque base de données utilise une app Django séparé. Pour créer une app à partir de la base de donnée, il faut :
 +
 +  - Créer l'app : ''<nowiki>python manage.py startapp nom_de_la_db</nowiki>''.
 +  - Générer le modèle de base : ''<nowiki>python manage.py inspectdb --database nom_de_la_db >nom_de_la_db/models.py</nowiki>''.
 +  - Nettoyer le modèle précédemment généré :
 +    - Vérifier la présence d'une clé primaire pour chaque modèle et que cette dernière soit cohérente.
 +    - Vérifier que les champs vides ou nuls disposent bien de ''<nowiki>blank=True</nowiki>'' et, si nécessaire, ''<nowiki>null=True</nowiki>''.
 +    - Spécifier des valeurs par défaut lorsque nécessaire.
 +    - Modifier les noms de champs de manière à avoir quelque chose de propre et cohérent.
 +    - Identifier les clé étrangères et autres relations puis modifier les champs en conséquence.
 +    - Vérifier la clause ''ON DELETE'' de chaque relation.
 +    - Identifier et intégrer les choix multiples.
 +    - Corriger les fautes d'orthographe de grammaire.
 +    - Ordonner les modèles.
 +    - Remplacer les commentaires par défaut par de vrais commentaires.
  
 <task> <task>
Ligne 49: Ligne 63:
  
   * [[fr:nel_mysql|La base de donnée du serveur de jeu]] ;   * [[fr:nel_mysql|La base de donnée du serveur de jeu]] ;
-  * [[fr:nel_mysql_django|Modèles Django des bases de données]]. 
  
 > Glorf | nel.users -> pour la connexion en jeu > Glorf | nel.users -> pour la connexion en jeu
Ligne 58: Ligne 71:
 > Shepeng | d'après deed la base kring est utile > Shepeng | d'après deed la base kring est utile
 > Shepeng | créée pourle ring, mais unepartie des fonctionnalitées ayant été intégrées dans le serveur de base, elle est devenue nécessaire si j'ai bien compris > Shepeng | créée pourle ring, mais unepartie des fonctionnalitées ayant été intégrées dans le serveur de base, elle est devenue nécessaire si j'ai bien compris
 +
 +
 +===== Dates par défaut =====
 +
 +MySQL a la mauvaise idée d'utiliser la valeur 0000-00-00 par défaut lorsqu’une date n'est pas renseignée. Ceci pose des problèmes avec Python/Django. Ce problème est à étudier afin d'en tirer la meilleur solution possible.
 +
 +  * https://code.djangoproject.com/ticket/443
 +  * https://code.djangoproject.com/ticket/2763
 +  * https://code.djangoproject.com/ticket/2369
 +  * https://code.djangoproject.com/ticket/2763
 +  * https://docs.python.org/3/library/datetime.html
  
  
 {{tag>Serveur Web}} {{tag>Serveur Web}}
CC Attribution-Share Alike 4.0 International Driven by DokuWiki
fr/webnel.1509885838.txt.gz · Dernière modification : 2021/12/03 19:18 (modification externe)

Licences Mentions légales Accueil du site Contact