documentation Django 1.8.9.dev20160113133807
Home
|
Table of contents
|
Index
|
Modules
up
|
next
»
Sommaire de la documentation Django
¶
Premiers pas
Coup d’œil sur Django
Concevez votre modèle
Déployez-le
Profitez de l’API qui vous est offerte
Une interface d’administration dynamique : ce n’est pas juste un échafaudage, c’est une vraie maison.
Conception des URL
Écriture des vues
Élaboration de vos gabarits
Ceci n’est que la base
Guide d’installation rapide
Installation de Python
Configuration d’une base de données
Désinstallation de toute version plus ancienne de Django
Installation de Django
Vérification
Ça y est !
Écriture de votre première application Django, 1ère partie
Création d’un projet
Création des modèles
Activation des modèles
Jouer avec l’interface de programmation (API)
Écriture de votre première application Django, 2ème partie
Création d’un utilisateur administrateur
Démarrage du serveur de développement
Entrée dans le site d’administration
Rendre l’application de sondage modifiable via l’interface d’admin
Exploration des fonctionnalités de l’interface d’administration
Personnalisation du formulaire d’administration
Ajout d’objets liés
Personnalisation de la liste pour modification de l’interface d’administration
Personnalisation de l’apparence de l’interface d’administration
Personnalisation de la page d’accueil de l’interface d’administration
Écriture de votre première application Django, 3ème partie
Philosophie
Écriture d’une première vue
Écriture de vues supplémentaires
Écriture de vues qui font réellement des choses
Les erreurs 404
Utilisation du système de gabarits
Suppression des URL codés en dur dans les gabarits
Espaces de noms et noms d’URL
Écriture de votre première application Django, 4ème partie
Écriture d’un formulaire simple
Utilisation des vues génériques : moins de code, c’est mieux
Écriture de votre première application Django, 5ème partie
Introduction aux tests automatisés
Stratégies élémentaires pour les tests
Écriture du premier test
Test d’une vue
Pour les tests, abondance de biens ne nuit pas
Encore plus de tests
Et ensuite ?
Écriture de votre première application Django, 6ème partie
Personnalisation de l’apparence de votre application
Ajout d’une image d’arrière-plan
Et ensuite ?
Tutoriel avancé : concevoir des applications réutilisables
Importance du recyclage
Votre projet et votre application recyclable
Installation de quelques prérequis
Empaquetage de l’application
Utilisation de son propre paquet
Publication de l’application
Installation de paquets Python avec virtualenv
Quelle lecture pour la suite
Recherche dans la documentation
Organisation de la documentation
Mise à jour de la documentation
Où l’obtenir
Différences entre versions
Écriture de votre premier correctif pour Django
Introduction
Installation de Git
Téléchargement d’une copie de la version de développement de Django
Retour à une révision précédente de Django
Lancement de la suite de test de Django pour la première fois
Écriture de quelques tests pour le ticket
Écriture du code pour le ticket
Lancement de la suite de tests de Django pour la seconde fois
Écriture de la documentation
Création du correctif contenant les modifications
Quelle est la prochaine étape ?
Utilisation de Django
Comment installer Django
Installation de Python
Installation de Apache et mod_wsgi
Mise en route de la base de données
Désinstallation des anciennes versions de Django
Installation du code de Django
Modèles et bases de données
Modèles
Création de requêtes
Agrégation
Gestionnaires
Lancement de requêtes SQL brutes
Transactions de base de données
Bases de données multiples
Espaces de tables
Optimisation de l’accès à la base de données
Exemples d’utilisation de l’API de relations entre modèles
Gestion des requêtes HTTP
Distribution des URL
Écriture de vues
Décorateurs de vue
Envoi de fichiers
Les fonctions raccourcis de Django
Vues génériques
Intergiciels (« Middleware »)
Utilisation des sessions
Utilisation des formulaires
Formulaires HTML
Le rôle de Django dans les formulaires
Les formulaires dans Django
Construction d’un formulaire
Plus de détails sur les classes
Form
de Django
Formulaires et gabarits
Sujets complémentaires
Gabarits
Prise en charge des moteurs de gabarit
Le langage de gabarit de Django
Vues fondées sur les classes
Introduction aux vues fondées sur les classes
Vues génériques fondées sur les classes, fournies par Django
Gestion de formulaires avec les vues fondées sur les classes
Utilisation de mixins avec les vues fondées sur les classes
Exemples de base
Utilisation simple dans une configuration d’URL
Héritage des vues génériques
Migrations
Un historique rapide
Les commandes
Bases de données prises en charge
Procédures
Dépendances
Fichiers de migrations
Ajout de migrations aux applications
Modèles historiques
Considérations lors de la suppression de champs de modèles
Migrations de données
Fusion de migrations
Sérialisation de valeurs
Prise en charge de Python 2 et 3
Prendre en charge plusieurs versions de Django
Mise à jour à partir de South
Gestion des fichiers
Utilisation des fichiers dans les modèles
L’objet
Stockage des fichiers
Les tests dans Django
Écriture et lancement de tests
Outils de test
Thématiques de tests avancées
Authentification des utilisateurs dans Django
Aperçu
Installation
Utilisation
L’infrastructure de cache dans Django
Mise en place du cache
Le cache « par site »
Le cache par vue
Cache de gabarits partiels
L’API de cache de bas niveau
Caches amonts
Utilisation des en-têtes Vary
Contrôle du cache : utilisation d’autres en-têtes
Ordre dans MIDDLEWARE_CLASSES
Traitement conditionnel de vue
Le décorateur
condition
Raccourcis pour le calcul d’une seule valeur
Utilisation des décorateurs avec d’autres méthodes HTTP
Comparaison avec l’intergiciel de traitement conditionnel
Signatures cryptographiques
Protection de SECRET_KEY
Utilisation de l’API de bas niveau
Envoi de messages électroniques
Exemple rapide
send_mail()
send_mass_mail()
mail_admins()
mail_managers()
Exemples
Prévention de l’injection d’en-têtes
La classe
Moteurs de messagerie
Configuration de la messagerie pour le développement
Internationalisation et régionalisation
Aperçu
Définitions
Les compléments régionaux « local flavor »
Instructions de migration
Politique de déprécation
Journalisation
Une introduction rapide sur la journalisation
La journalisation en pratique
Configuration de la journalisation
Extensions de journalisation de Django
Configuration de journalisation par défaut de Django
Pagination
Exemple
Utilisation de
Paginator
dans une vue
Objets
Paginator
Exceptions
InvalidPage
Objets
Page
Passage à Python 3
Philosophie
Aides à la migration
Lignes directrices pour le code
La sécurité dans Django
Protection contre le « Cross site scripting » (XSS)
Protection contre le « Cross site request forgery » (CSRF)
Protection contre l’injection SQL
Protection contre le détournement de clic (« clickjacking »)
SSL/HTTPS
Validation de l’en-tête Host
Sécurité des sessions
Contenu envoyé par les utilisateurs
Thèmes de sécurité supplémentaires
Performance et optimisations
Introduction
Approches générales
Mise en cache
Compréhension du retardement
Bases de données
Performances HTTP
Performance des gabarits
Utilisation de différentes versions disponibles des logiciels
Sérialisation d’objets Django
Sérialisation de données
Désérialisation de données
Formats de sérialisation
Clés naturelles
Les réglages de Django
Principes de base
Définition du fichier de réglages
Réglages par défaut
Utilisation des réglages dans le code Python
Modification des réglages en cours d’exécution
Sécurité
Réglages disponibles
Création de ses propres réglages
Utilisation des réglages sans définir DJANGO_SETTINGS_MODULE
Signaux
Écoute de signaux
Définition et envoi de signaux
Déconnexion des signaux
Infrastructure de contrôle du système
Écrire vos propres contrôles
Guides pratiques
Authentification avec
REMOTE_USER
Configuration
Écriture de commandes django-admin personnalisées
Définition de paramètres facultatifs
Commandes de gestion et langues
Tests
Objets de commandes
Écriture de champs de modèles personnalisés
Introduction
Contexte théorique
Écriture d’une sous-classe de champ
Écriture d’une sous-classe
Expressions de recherche personnalisées
Un exemple simple d’expression de recherche
Un exemple simple de transformateur
Écriture d’une recherche abs__lt efficace
Un exemple de transformateur bilatéral
Écriture d’implémentations alternatives pour des recherches existantes
Comment Django détermine les recherches et les transformations qui sont utilisées
Balises et filtres de gabarit personnalisés
Disposition du code
Écriture de filtres de gabarits personnalisés
Écriture de balises de gabarits personnalisées
Écriture d’un système de stockage personnalisé
Déploiement de Django
Comment déployer avec WSGI
Liste de contrôle de déploiement
Comment utiliser Django avec FastCGI, SCGI ou AJP
Mise à jour de Django à une version plus récente
Lecture conseillée
Dépendances
Installation
Tests
Déploiement
Signalement d’erreurs
Rapports par messagerie
Filtrage de rapports d’erreur
Données initiales pour les modèles
Données initiales par les instantanés
Données initiales en SQL
Fonctionnement de Django sur Jython
Installation de Jython
Création d’un conteneur servlet
Installation de Django
Installation des bibliothèques de prise en charge de la plate-forme Jython
Différences avec Django sur Jython
Intégration de Django avec une base de données existante
Indication des paramètres de la base de données
Génération automatique des modèles
Installation des tables principales de Django
Tests et ajustements
Production de CSV avec Django
La bibliothèque CSV de Python
Utilisation du système de gabarits
Autres formats textuels
Production de PDF avec Django
Installation de ReportLab
Écriture de la vue
PDF complexes
Ressources complémentaires
Autres formats
Gestion des fichiers statiques (par ex. images, JavaScript, CSS)
Configuration des fichiers statiques
Service des fichiers statiques en développement
Service de fichiers téléversés par les utilisateurs durant le développement
Tests
Déploiement
En savoir plus
Déploiement des fichiers statiques
Service des fichiers statiques en production
En savoir plus
Comment installer Django avec Windows
Installation de Python
Installation de Setuptools
Installation de PIP
Installation de Django
Problèmes fréquents
Écriture de migrations de base de données
Migrations de données et bases de données multiples
Migrations ajoutant des champs uniques
Contrôle de l’ordre des migrations
FAQ Django
FAQ : généralités
Pourquoi ce projet existe-t-il ?
Que signifie « Django », et comment le prononcer ?
Est-ce que Django est stable ?
Est-ce que Django a la capacité de monter en charge ?
Qui est derrière cela ?
Quels sites utilisent Django ?
Django apparaît comme un système MVC, mais vous appelez le contrôleur la « vue », et la vue le « gabarit » (template). Pourquoi n’utilisez-vous pas les noms standards ?
Le <Système X> contient la <fonctionnalité Y> – pourquoi Django ne le fait-il pas ?
Pourquoi avoir écrit Django de zéro, au lieu d’utiliser d’autres bibliothèques Python ?
Django est-il un système de gestion de contenus (CMS) ?
Comment puis-je télécharger la documentation Django pour la lire hors ligne ?
Où puis-je trouver des développeurs Django à recruter ?
Comment dois-je citer Django ?
FAQ : Installation
Comment débuter ?
Quels sont les prérequis de Django ?
Quelle version de Python puis-je utiliser avec Django ?
Quelle version de Python devrais-je utiliser avec Django ?
Dois-je utiliser la version stable ou la version de développement ?
FAQ : utilisation de Django
Pourquoi ai-je une erreur sur l’importation de DJANGO_SETTINGS_MODULE ?
Je ne supporte pas votre langage de gabarit. Suis-je obligé de l’utiliser ?
Dois-je utiliser votre couche modèle/base de données ?
Comment puis-je utiliser les champs image et fichier ?
Comment puis-je rendre une variable disponible pour tous mes gabarits ?
FAQ : Obtenir de l’aide
Comment puis-je faire X ? Pourquoi Y ne fonctionne-t-il pas ? Où puis-je obtenir de l’aide ?
Pourquoi mon message n’apparaît-il pas sur django-users ?
Personne n’a répondu à ma question sur django-users ! Que dois-je faire ?
Je pense avoir trouvé un bogue ! Que dois-je faire ?
Je pense avoir trouvé un problème de sécurité ! Que dois-je faire ?
FAQ : Bases de données et modèles
Comment est-ce que je peux voir les requêtes SQL brutes exécutées par Django ?
Puis-je utiliser Django avec une base de données pré-existante ?
Si je fais des changements à un modèle, comment puis-je mettre à jour la base de données ?
Est-ce que les modèles de Django prennent en charge les clés primaires sur plusieurs colonnes ?
Django prend-il en charge les bases de données NoSQL ?
Comment puis-je ajouter des options spécifiques à la base de données dans mes commandes CREATE TABLE, telles que spécifier MyISAM comme type de table ?
FAQ : l’interface d’administration
Je ne peux pas me connecter. Lorsque je saisis un nom d’utilisateur et un mot de passe valides, cela me renvoie toujours vers la même page de connexion, sans aucun message d’erreur.
Je n’arrive pas à me connecter. Quand je saisis un couple nom d’utilisateur/mot de passe valide, j’obtiens à nouveau la page de connexion avec l’erreur : « Saisissez un nom d’utilisateur et un mot de passe valides ».
Comment automatiquement définir la valeur d’un champ avec l’utilisateur qui a mis à jour l’objet en dernier dans l’interface d’administration ?
Comment limiter l’accès à l’interface d’administration afin que les objets ne puissent être modifiés que par leur créateur ?
Le CSS et les images de mon site d’administration s’affichent parfaitement avec le serveur de développement, mais plus quand j’utilise mod_wsgi.
Mon « list_filter » contient un champ ManyToManyField, mais le filtre ne s’affiche pas.
Certains objets n’apparaissent pas dans l’interface d’administration.
Comment puis-je personnaliser les fonctionnalités de l’interface d’administration ?
Le site d’administration généré dynamiquement ne me plaît pas. Comment puis-je le modifier ?
Quels sont les navigateurs pris en charge par le site d’administration ?
FAQ : contribution au code
Comment puis-je commencer à contribuer au code de Django ?
J’ai soumis un correctif dans le système de tickets il y a maintenant plusieurs semaines. Pourquoi avez-vous ignoré mon correctif ?
Quand et comment devrais-je relancer l’équipe principale à propos d’un correctif qui me tient à cœur ?
Mais je vous ai adressé un rappel plusieurs fois et vous continuez d’ignorer mon correctif !
Dépannage
Problèmes d’exécution de django-admin
Divers
Référence de l’API
Applications
Projets et applications
Configuration des applications
Configuration d’applications
Registre d’applications
Processus d’initialisation
Infrastructure de contrôle système
Référence de l’API
Contrôles prédéfinis
API des vues intégrées fondées sur les classes
Vues de base
Vues génériques d’affichage
Vues génériques d’édition
Vues génériques basées sur les dates
Vues « mixins » fondées sur les classes
Vues génériques fondées sur les classes - index général
Spécification
Vues de base et vues génériques
Protection contre le détournement de clic (clickjacking)
Un exemple de détournement de clic
Prévention du détournement de clic
Comment l’utiliser
Limitations
Paquets
contrib
Le site d’administration de Django
django.contrib.auth
Utilisateur (modèle
User
)
Utilisateurs anonymes
Permission
Groupe
Signaux de connexion et de déconnexion
Moteurs d’authentification
L’infrastructure des types de contenus (contenttypes)
L’application flatpages (pages statiques)
django.contrib.formtools
GeoDjango
django.contrib.humanize
L’infrastructure des messages
django.contrib.postgres
L’application de redirection
Le système des plans de site (
sitemap
)
L’infrastructure des « sites »
L’application de gestion des fichiers statiques (staticfiles)
L’infrastructure de syndication par flux
django.contrib.webdesign
admin
auth
contenttypes
flatpages
gis
humanize
messages
postgres
redirects
sessions
sites
sitemaps
syndication
webdesign
Autres compléments
Protection contre le « Cross site request forgery » (CSRF)
Comment l’utiliser
Requêtes rejetées
Fonctionnement
Mise en cache
Tests
Limitations
Cas particuliers
Applications intégrées et applications réutilisables
Réglages
Bases de données
Remarques générales
Notes sur PostgreSQL
Notes sur MySQL
Notes sur SQLite
Notes sur Oracle
Utilisation d’un moteur de base de données externe
django-admin et manage.py
Utilisation
Commandes disponibles
Commandes fournies par les applications
Options par défaut
Options communes
Options complémentaires
Lancement de commandes de gestion à partir du code
Redirection en sortie
Exceptions de Django
Exceptions principales de Django
Exceptions du résolveur d’URL
Exceptions de base de données
Exceptions Http
Exceptions de transaction
Exceptions de l’infrastructure de test
Exceptions Python
Gestion des fichiers
L’objet
File
API de stockage des fichiers
Fichiers téléversés et gestionnaires de téléversement
Formulaires
L’API des formulaires
Champs de formulaires
Fonctions de formulaires de modèles
Fonctions de formulaires groupés
Composants de formulaires (« widgets »)
La validation de formulaires et de champs
Intergiciels (« middleware »)
Intergiciels disponibles
Ordre des intergiciels
Opérations de migration
Opérations liées au schéma
Opérations spéciales
Écriture d’opérations personnalisées
Modèles
Référence des champs de modèle
Référence d’attributs des champs
L’API
_meta
des modèles
Référence des objets liés
Référence de la classe Model
Options
Meta
des modèles
Référence des instances de modèles
Référence de l’API QuerySet
API de référence des expressions de recherche
Expressions de requête
Expressions conditionnelles
Fonctions de base de données
Les objets requête et réponse
Aperçu rapide
Objets HttpRequest
Objets QueryDict
Objets HttpResponse
Objets JsonResponse
Objets StreamingHttpResponse
Objets FileResponse
SchemaEditor
Méthodes
Attributs
Réglages
Réglages de base
Auth
Messages
Sessions
Sites
Fichiers statiques
Index thématique des réglages de base
Signaux
Signaux de modèle
Signaux de gestion
Signaux de requête et de réponse
Signaux de test
Adaptateurs de base de données
Gabarits
Le langage de gabarit de Django
Balises et filtres de gabarit intégrés
Le langage de gabarit de Django : pour les programmeurs Python
Mise à jour des gabarits pour Django 1.8
TemplateResponse et SimpleTemplateResponse
Objets SimpleTemplateResponse
Objets TemplateResponse
Le processus de rendu
Utilisation de TemplateResponse et de SimpleTemplateResponse
Données Unicode
Création de la base de données
Traitement général des chaînes
Modèles
L’API de base de données
Gabarits
Fichiers
Messagerie
Envoi de formulaire
Fonctions utilitaires
django.core.urlresolvers
reverse()
reverse_lazy()
resolve()
get_script_prefix()
Fonctions utilitaires
django.conf.urls
patterns()
static()
url()
include()
handler400
handler403
handler404
handler500
Utilitaires Django
django.utils.cache
django.utils.datastructures
django.utils.dateparse
django.utils.decorators
django.utils.encoding
django.utils.feedgenerator
django.utils.functional
django.utils.html
django.utils.http
django.utils.module_loading
django.utils.safestring
django.utils.text
django.utils.timezone
django.utils.translation
django.utils.tzinfo
Validateurs
Écriture de validateurs
Exécution des validateurs
Validateurs intégrés
Vues intégrées
Service des fichiers durant le développement
Vues d’erreur
Méta documentation et divers
Stabilité de l’API
Ce que « stable » signifie
API stables
Exceptions
Approches conceptuelles
Vue d’ensemble
Modèles
API de base de données
Conception des URL
Système de gabarit
Vues
L’infrastructure de cache
Distributions tierces de Django
Pour les distributeurs
Glossaire
Release notes
Final releases
1.8 release
1.7 release
1.6 release
1.5 release
1.4 release
1.3 release
1.2 release
1.1 release
1.0 release
Pre-1.0 releases
Security releases
Django internals
Contributing to Django
Advice for new contributors
Reporting bugs and requesting features
Triaging tickets
Writing code
Writing documentation
Localizing Django
Committing code
Mailing lists
django-users
django-core-mentorship
django-developers
django-i18n
django-announce
django-updates
Organization of the Django Project
Principles
Core team
Technical board
Changing the organization
Django team
The original team
The current team
Past team members
Roles
Technical board
Committers
Security team
Releasers
Ops team
Django’s security policies
Reporting security issues
Supported versions
How Django discloses security issues
Who receives advance notification
Requesting notifications
Django’s release process
Official releases
Supported versions
Long-term support (LTS) releases
Release process
Django Deprecation Timeline
1.10
1.9
1.8
1.7
1.6
1.5
1.4
1.3
The Django source code repository
High-level overview
The master branch
Other branches
Tags
How is Django Formed?
Overview
Prerequisites
Pre-release tasks
Preparing for release
Actually rolling the release
Making the release(s) available to the public
Post-release
New stable branch tasks
Notes on setting the VERSION tuple
Index, glossaire et tableaux
¶
Index
Index du module
Glossaire
Table des Matières
Sommaire de la documentation Django
Index, glossaire et tableaux
Browse
Next:
Documentation de Django
You are here:
documentation Django 1.8.9.dev20160113133807
Sommaire de la documentation Django
Cette page
Montrer la source
Recherche rapide
Saisissez un mot clef ou un nom de module, classe ou fonction.
Last update:
Jan 13, 2016
up
|
next
»