Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
utilisateurs:hypathie:tutos:developpement-pyhon-utiliser-django [08/12/2015 10:15] Hypathie [Développer en Python avec Django] |
utilisateurs:hypathie:tutos:developpement-pyhon-utiliser-django [08/12/2015 12:04] Hypathie [Configurations et installation de Django avec SQLite3] |
||
---|---|---|---|
Ligne 54: | Ligne 54: | ||
<code root>apt-get install python-doc python3-doc</code> | <code root>apt-get install python-doc python3-doc</code> | ||
+ | |||
+ | * pour utiliser pyenv | ||
+ | |||
+ | <code root>apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \ | ||
+ | libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev</code> | ||
* Sans rapport avec le développement mais utilisé plus bas | * Sans rapport avec le développement mais utilisé plus bas | ||
Ligne 108: | Ligne 113: | ||
On choisit la sélection correspondante à python2.7 pour tout le système. Ici c'est le choix n°1. | On choisit la sélection correspondante à python2.7 pour tout le système. Ici c'est le choix n°1. | ||
+ | |||
+ | <note warning> | ||
+ | * À savoir pour supprimer l'un des choix de la liste : | ||
+ | |||
+ | <code root>update-alternatives --remove python /usr/bin/python2.7</code> | ||
+ | |||
+ | * Ne jamais désinstaller les versions inférieures à python 3 ! \\ De nombreux logiciels ne fonctionneraient plus. | ||
+ | |||
+ | ''<del>apt-get purge python</del>'' | ||
+ | </note> | ||
+ | |||
+ | * Pour vérifier | ||
<code root>python --version</code> | <code root>python --version</code> | ||
Ligne 113: | Ligne 130: | ||
<note tip> | <note tip> | ||
- | L'idée suivie ici sera de conserver python2 pour tout le système, et de mettre en place python3 dans un environnement virtuel. \\ | + | L'idée suivie ici sera de conserver python2 pour tout le système, et de mettre en place python3 dans un environnement virtuel consacré aux projets django. \\ |
- | Pour installer Django avec python3 y compris dans un environnement virtuel (dossier créé avec ''virtualenv'' dans le répertoire courant de l'utilisateur) , il faut d'abord que python3 soit en place afin de s'éviter quelque conflits lors de la création de son environnement virtuel python3 avec la commande ''virtualenv''. \\ | + | Pour installer Django avec python3 y compris **dans un environnement virtuel on n'utilisera pas** ''virtualenv'', afin de s'éviter quelque conflits lors de l'installation de django. \\ |
- | </note> | + | En effet : |
+ | <code user> | ||
+ | python --version | ||
+ | </code> | ||
+ | <code retour> | ||
+ | Python 3.4.2 | ||
+ | </code> | ||
+ | <code user>virtualenv MonPy3Django -p /usr/bin/python3.4</code> | ||
+ | <code user>cd MonPy3Django/</code> | ||
+ | <code user>source bin/activate 1.8-3.4</code> | ||
+ | <code retour>Downloading/unpacking django | ||
+ | Downloading Django-1.9-py2.py3-none-any.whl (6.6MB): 6.6MB downloaded | ||
+ | Installing collected packages: django | ||
+ | *** Error compiling '/tmp/pip-build-c20d1nfa/django/django/conf/app_template/apps.py'... | ||
+ | File "/tmp/pip-build-c20d1nfa/django/django/conf/app_template/apps.py", line 4 | ||
+ | class {{ camel_case_app_name }}Config(AppConfig): | ||
+ | ^ | ||
+ | SyntaxError: invalid syntax | ||
- | <note warning> | + | *** Error compiling '/tmp/pip-build-c20d1nfa/django/django/conf/app_template/models.py'... |
- | * À savoir pour supprimer l'un des choix de la liste : | + | File "/tmp/pip-build-c20d1nfa/django/django/conf/app_template/models.py", line 1 |
+ | {{ unicode_literals }}from django.db import models | ||
+ | ^ | ||
+ | SyntaxError: invalid syntax | ||
- | <code root>update-alternatives --remove python /usr/bin/python2.7</code> | + | Successfully installed django |
+ | Cleaning up... | ||
+ | </code> | ||
- | * Ne jamais désinstaller les versions inférieures à python 3 ! \\ De nombreux logiciels ne fonctionneraient plus. | ||
- | |||
- | ''<del>apt-get purge python</del>'' | ||
</note> | </note> | ||
+ | |||
+ | |||
Ligne 154: | Ligne 192: | ||
===== Configurations et installation de Django avec SQLite3===== | ===== Configurations et installation de Django avec SQLite3===== | ||
+ | |||
+ | ==== Installer Django dans un environnement virtuel avec pyenv==== | ||
+ | |||
+ | <code user>git clone https://github.com/yyuu/pyenv.git ~/.pyenv</code> | ||
+ | <code user>echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc</code> | ||
+ | |||
+ | <code user>echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc</code> | ||
+ | <code user>echo 'eval "$(pyenv init -)"' >> ~/.bashrc</code> | ||
+ | <code user>exec $SHELL</code> | ||
+ | <code user>pyenv</code> | ||
+ | <code retour>pyenv 20151124-16-g132179d | ||
+ | Usage: pyenv <command> [<args>] | ||
+ | |||
+ | Some useful pyenv commands are: | ||
+ | commands List all available pyenv commands | ||
+ | local Set or show the local application-specific Python version | ||
+ | global Set or show the global Python version | ||
+ | shell Set or show the shell-specific Python version | ||
+ | install Install a Python version using python-build | ||
+ | uninstall Uninstall a specific Python version | ||
+ | rehash Rehash pyenv shims (run this after installing executables) | ||
+ | version Show the current Python version and its origin | ||
+ | versions List all Python versions available to pyenv | ||
+ | which Display the full path to an executable | ||
+ | whence List all Python versions that contain the given executable | ||
+ | |||
+ | See `pyenv help <command>' for information on a specific command. | ||
+ | For full documentation, see: https://github.com/yyuu/pyenv#readme</code> | ||
+ | <code user>pyenv install 2.7.9</code> | ||
+ | <code user>pyenv install 3.4.3</code> | ||
+ | |||
+ | <note> | ||
+ | L'exécution des deux commandes précédentes est longue. Patience... | ||
+ | </note> | ||
+ | |||
+ | <code user>pyenv versions</code> | ||
+ | <code retour>* system (set by /home/hypathie/.pyenv/version) | ||
+ | 2.7.9 | ||
+ | 3.4.3</code> | ||
+ | | ||
+ | * les commandes pyenv | ||
+ | |||
+ | <code user>pyenv +lacommande</code> | ||
+ | |||
+ | * Avoir une liste des commandes pyenv | ||
+ | |||
+ | <code user>pyenv</code> | ||
+ | <code retour>Some useful pyenv commands are: | ||
+ | commands List all available pyenv commands | ||
+ | local Set or show the local application-specific Python version | ||
+ | global Set or show the global Python version | ||
+ | shell Set or show the shell-specific Python version | ||
+ | install Install a Python version using python-build | ||
+ | uninstall Uninstall a specific Python version | ||
+ | rehash Rehash pyenv shims (run this after installing executables) | ||
+ | version Show the current Python version and its origin | ||
+ | versions List all Python versions available to pyenv | ||
+ | which Display the full path to an executable | ||
+ | whence List all Python versions that contain the given executable | ||
+ | </code> | ||
+ | |||
+ | * Configurer la version du shell pyenv pour choisir sa version de python | ||
+ | - Pour que le shell utilise la version 2 installée plutôt | ||
+ | <code user>pyenv shell 2.7.9</code> | ||
+ | - Pour savoir quelle est la version de son shell | ||
+ | <code user>pyenv shell</code> | ||
+ | <code retour>2.7.9</code> | ||
+ | - version de python utilisée | ||
+ | <code user>python --version</code> | ||
+ | <code retour>Python 2.7.9</code> | ||
+ | - Depuis où ? | ||
+ | <code user> which python</code> | ||
+ | <code user>/home/hypathie/.pyenv/shims/python</code> | ||
+ | |||
+ | - Pour changer de version de python pour l'environnement virtuel, on fait la même chose avec la version | ||
+ | <code user>pyenv shell 3.4.3</code> | ||
+ | <code user>python --version</code> | ||
+ | <code retour>Python 3.4.3</code> | ||
+ | |||
+ | * Utiliser virtualenv avec pyenv | ||
+ | <code user>git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv</code> | ||
+ | <code user>echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc</code> | ||
+ | <code user>exec $SHELL</code> | ||
+ | |||
+ | * Créer un répertoire pour django | ||
+ | <code user>mkdir MonPython3Django</code> | ||
+ | <code user>cd MonPython3Django/</code> | ||
+ | <code user>pyenv shell 3.4.3</code> | ||
+ | <code user>python --version</code> | ||
+ | <code retour>Python 3.4.3</code> | ||
+ | <code user>pyenv virtualenv 1.8-3.4</code> | ||
+ | <code retour>Ignoring indexes: https://pypi.python.org/simple | ||
+ | Requirement already satisfied (use --upgrade to upgrade): setuptools in /home/hypathie/.pyenv/versions/3.4.3/envs/1.8-3.4/lib/python3.4/site-packages | ||
+ | Requirement already satisfied (use --upgrade to upgrade): pip in /home/hypathie/.pyenv/versions/3.4.3/envs/1.8-3.4/lib/python3.4/site-packages | ||
+ | </code> | ||
+ | <code user>pyenv activate 1.8-3.4</code> | ||
+ | <code user>pip install django</code> | ||
+ | <code retour>You are using pip version 6.0.8, however version 7.1.2 is available. | ||
+ | You should consider upgrading via the 'pip install --upgrade pip' command. | ||
+ | Collecting django | ||
+ | Downloading Django-1.9-py2.py3-none-any.whl (6.6MB) | ||
+ | 100% |################################| 6.6MB 88kB/s | ||
+ | Installing collected packages: django | ||
+ | |||
+ | Successfully installed django-1.9 | ||
+ | (1.8-3.4) hypathie@debian:~/MonPython3Django$ pip install django</code> | ||
+ | Pas d'erreur cette fois 8-) | ||
+ | <code user>django-admin.py --version</code> | ||
+ | <code retour>1.9</code> | ||
+ | <code user>pyenv deactivate</code> | ||
+ | |||
+ | |||
+ | <code user></code> | ||
+ | <code user></code> | ||
+ | |||
==== Installer Django dans un environnement python virtuel ==== | ==== Installer Django dans un environnement python virtuel ==== | ||
- | === On créer un répertoire par exemple sur son bureau :=== | + | === On créer un répertoire=== |
<code user>virtualenv MonPy3Django -p /usr/bin/python3.4</code> | <code user>virtualenv MonPy3Django -p /usr/bin/python3.4</code> | ||
Ligne 195: | Ligne 348: | ||
=== On active l'environnement virtuel python=== | === On active l'environnement virtuel python=== | ||
- | <code user>source bin/activate 1.8-3.4</code> | ||
- | <note warning> | ||
- | Ne pas lancer ''source bin/activate'' sinon on aura une erreur de compilation avec la commande d'installation de django sans que cette erreur l'empêche de installer ! | ||
- | <code user>source bin/activate</code> | ||
- | <code user>pip install django</code> | ||
- | <code retour>Downloading/unpacking django | ||
- | Downloading Django-1.9-py2.py3-none-any.whl (6.6MB): 6.6MB downloaded | ||
- | Installing collected packages: django | ||
- | *** Error compiling '/tmp/pip-build-c20d1nfa/django/django/conf/app_template/apps.py'... | ||
- | File "/tmp/pip-build-c20d1nfa/django/django/conf/app_template/apps.py", line 4 | ||
- | class {{ camel_case_app_name }}Config(AppConfig): | ||
- | ^ | ||
- | SyntaxError: invalid syntax | ||
- | |||
- | *** Error compiling '/tmp/pip-build-c20d1nfa/django/django/conf/app_template/models.py'... | ||
- | File "/tmp/pip-build-c20d1nfa/django/django/conf/app_template/models.py", line 1 | ||
- | {{ unicode_literals }}from django.db import models | ||
- | ^ | ||
- | SyntaxError: invalid syntax | ||
- | |||
- | Successfully installed django | ||
- | Cleaning up... | ||
- | </code> | ||
- | |||
- | </note> | ||
<note tip> | <note tip> |