207 votes

Configurer Django pour utiliser MySQL

Je suis désireux de s'éloigner de PHP un peu de moyens et d'apprendre le langage Python. Afin de faire du développement web avec Python, je vais avoir besoin d'un cadre pour aider avec des gabarits et des autres choses.

J'ai un serveur de production non que je teste toutes les de développement web trucs sur. C'est une Debian 7.1 LAMPE à pile qui fonctionne MariaDB au lieu de la commune de MySQL-server package.

Hier, j'ai installé Django et créé mon premier projet appelé firstweb. Je n'ai pas changé les paramètres encore.

Voici mon premier gros morceau de la confusion. Dans le tutoriel, j'ai suivi le gars installé Django, a lancé son premier projet, redémarré Apache, et Django juste travaillé à partir de là. Il est allé à son navigateur et est allé à la Django de page par défaut avec pas de problèmes.

Moi en revanche, j'ai un cd dans mon firstweb dossier et exécuter

python manage.py runserver myip:port

Et il fonctionne. Pas de problème. Mais je me demande si c'est censé fonctionner comme ça, et si cela va entraîner des problèmes sur la ligne?

Ma deuxième question est que je veux le configurer de sorte qu'il utilise ma base de données MySQL. Je vais dans mon settings.py sous /firstweb/firstweb et je vois MOTEUR et le NOM, mais je ne sais pas quoi mettre ici.

Et puis à l'UTILISATEUR, MOT de passe, et les zones d'ACCUEIL est-ce de ma base de données et ses informations d'identification? Si j'utilise localhost puis-je simplement mettre localhost dans la zone d'ACCUEIL?

376voto

Andy Points 8252

Support de MySQL est simple à ajouter. Dans votre DATABASES tableau, vous aurez une entrée comme celle-ci:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', 
        'NAME': 'DB_NAME',
        'USER': 'DB_USER',
        'PASSWORD': 'DB_PASSWORD',
        'HOST': 'localhost',   # Or an IP Address that your DB is hosted on
        'PORT': '3306',
    }
}

Si vous êtes juste de tester votre application sur votre ordinateur local, vous pouvez utiliser

python manage.py runserver

L'ajout de l' ip:port argument permet de machines autres que votre propre pour accéder à votre application de développement. Une fois que vous êtes prêt à déployer votre application, je vous recommande de prendre un coup d'oeil au chapitre sur le Déploiement de Django sur le djangobook

Si vous utilisez Oracle MySQL connector votre ENGINE ligne devrait ressembler à ceci:

'ENGINE': 'mysql.connector.django',

30voto

Ritesh Points 68

Pour la première fois, exécutez les commandes ci-dessous pour installer les dépendances python, sinon la commande python runserver générera une erreur.

 sudo apt-get install libmysqlclient-dev
sudo pip install MySQL-python
 

Configurez ensuite le fichier settings.py tel que défini par #Andy et à la dernière exécution:

 python manage.py runserver
 

S'amuser..!!

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X