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 18:12] Hypathie [Créer des projets Django en python2 ou python3] |
utilisateurs:hypathie:tutos:developpement-pyhon-utiliser-django [09/12/2015 21:33] Hypathie [Installations] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Développer en Python3 avec Django====== | ====== Développer en Python3 avec Django====== | ||
- | * Objet : Installer un environnement virtuel avec python3 pour utiliser Django \\ essayer un mini projet avec chacune des différentes bases de données supportées par ORM de Django. | + | * Objet : Installer un environnement virtuel pour coder en python3 avec Django |
* Niveau requis : {{tag>débutant}} | * Niveau requis : {{tag>débutant}} | ||
Ligne 7: | Ligne 7: | ||
===== Installations ===== | ===== Installations ===== | ||
- | **Installer les outils et bibliothèques pour développer en python ou python3** | + | ===Installer les outils et bibliothèques pour développer en python ou python3=== |
<note tip> | <note tip> | ||
Ligne 23: | Ligne 23: | ||
* Bibliothèques FreeType nécessaire par matplotlib | * Bibliothèques FreeType nécessaire par matplotlib | ||
- | <code=root>apt-get install libfreetype6 libfreetype6-dev</code> | + | <code root>apt-get install libfreetype6 libfreetype6-dev</code> |
* Dépendances nécessaire pour la cryptographie | * Dépendances nécessaire pour la cryptographie | ||
Ligne 65: | Ligne 65: | ||
<code root>apt-get install tree</code> | <code root>apt-get install tree</code> | ||
+ | |||
+ | * Pour utiliser vim avec python3 | ||
+ | |||
+ | <code root>apt-get install libncurses5-dev libgnome2-dev libgnomeui-dev \ | ||
+ | libgtk2.0-dev libatk1.0-dev libbonoboui2-dev \ | ||
+ | libcairo2-dev libx11-dev libxpm-dev libxt-dev python-dev \ | ||
+ | ruby-dev mercurial</code> | ||
+ | | ||
+ | ===Vim IDE pour python3 === | ||
+ | |||
+ | * On supprime les versions vim existantes sur le système | ||
+ | |||
+ | <code user> | ||
+ | vim --version | ||
+ | </code> | ||
+ | |||
+ | <code retour>VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Mar 31 2015 23:36:07) | ||
+ | Rustines incluses : 1-488, 576 | ||
+ | Modifié par pkg-vim-maintainers@lists.alioth.debian.org | ||
+ | Compilé par jamessan@debian.org | ||
+ | Énorme version avec interface graphique GTK2. | ||
+ | Fonctionnalités incluses (+) ou non (-) : | ||
+ | +acl +farsi +mouse_netterm +syntax | ||
+ | +arabic +file_in_path +mouse_sgr +tag_binary | ||
+ | +autocmd +find_in_path -mouse_sysmouse +tag_old_static | ||
+ | +balloon_eval +float +mouse_urxvt -tag_any_white | ||
+ | +browse +folding +mouse_xterm +tcl | ||
+ | ++builtin_terms -footer +multi_byte +terminfo | ||
+ | +byte_offset +fork() +multi_lang +termresponse | ||
+ | +cindent +gettext -mzscheme +textobjects | ||
+ | +clientserver -hangul_input +netbeans_intg +title | ||
+ | +clipboard +iconv +path_extra +toolbar | ||
+ | +cmdline_compl +insert_expand +perl +user_commands | ||
+ | +cmdline_hist +jumplist +persistent_undo +vertsplit | ||
+ | +cmdline_info +keymap +postscript +virtualedit | ||
+ | +comments +langmap +printer +visual | ||
+ | +conceal +libcall +profile +visualextra | ||
+ | +cryptv +linebreak +python +viminfo | ||
+ | +cscope +lispindent -python3 +vreplace | ||
+ | </code> | ||
+ | |||
+ | En effet, ''+python | ||
+ | -python3'' | ||
+ | |||
+ | <code root>apt-get remove vim vim-runtime gvim vim-tiny vim-common vim-gui-common</code> | ||
Ligne 128: | Ligne 173: | ||
==== Installer pyenv==== | ==== Installer pyenv==== | ||
+ | |||
+ | * Références : https://github.com/yyuu/pyenv | ||
<code user>git clone https://github.com/yyuu/pyenv.git ~/.pyenv</code> | <code user>git clone https://github.com/yyuu/pyenv.git ~/.pyenv</code> | ||
Ligne 564: | Ligne 611: | ||
>>> | >>> | ||
</code> | </code> | ||
+ | |||
+ | * Évidemment, on code en python 3 dans le fichier de création de Modèle ''models.py'' ! | ||
+ | |||
+ | * Un lien utile sur les différences entre le code python2 et le code python 3 : \\ http://apprendre-python.com/page-syntaxe-differente-python2-python3-python-differences | ||
+ | |||
+ | * Pour plus de détails et s'exercer, exemple du site officiel de Django : \\ https://docs.djangoproject.com/fr/1.8/intro/tutorial01/#playing-with-the-api | ||
+ | |||
</note> | </note> | ||
- | * Pour s'exercer avec ce shell: https://docs.djangoproject.com/fr/1.8/intro/tutorial01/#playing-with-the-api | + | |
==== Création d'un administrateur Django==== | ==== Création d'un administrateur Django==== | ||
Ligne 619: | Ligne 673: | ||
* Utiliser du Javascript, du CSS avec Django : https://docs.djangoproject.com/fr/1.8/intro/tutorial06/#writing-your-first-django-app-part-6 | * Utiliser du Javascript, du CSS avec Django : https://docs.djangoproject.com/fr/1.8/intro/tutorial06/#writing-your-first-django-app-part-6 | ||
- | =====Configurer Vim pour Python ===== | ||
- | * On installe curl | ||
- | <code root>apt-get install curl</code> | ||
- | |||
- | * On installe git : | ||
- | |||
- | <code root>apt-get install git-core</code> | ||
- | |||
- | * On installe pathogen | ||
- | |||
- | Voir : https://github.com/search?utf8=%E2%9C%93&q=pathogen | ||
- | |||
- | <code user> | ||
- | mkdir -p ~/.vim/autoload ~/.vim/bundle && \ | ||
- | curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim | ||
- | </code> | ||
- | |||
- | * On crée et édite un fichier caché ~/.vimrc : | ||
- | |||
- | <code user>vim ~/.vimrc</code> | ||
- | |||
- | <file> | ||
- | execute pathogen#infect() | ||
- | syntax on | ||
- | filetype plugin indent on | ||
- | </file> | ||
- | |||
- | pathogen va chercher dans le répertoire bundle les plugin qu'on lui a installé et les utiliser comme si on les avait installé dans le fichier .vimrc | ||
- | |||
- | * On installe le module nerdtree : | ||
- | |||
- | Voir : https://github.com/scrooloose/nerdtree | ||
- | |||
- | <code user>git clone https://github.com/scrooloose/nerdtree.git ~/.vim/bundle/nerdtree</code> | ||
- | |||
- | <note tip> | ||
- | ** | ||
- | Principales commandes de NERD Tree :** | ||
- | |||
- | |||
- | t: Ouvrir le fichier sélectionné dans un nouvel onglet | ||
- | i: Ouvrez le fichier sélectionné dans une fenêtre fissure verticale | ||
- | s: Open the selected file in a vertical split window | ||
- | I: Commutation de fichiers cachés | ||
- | m: Pour faire apparaître un menu qui vous permettra d'ajouter rapidement, déplacer(=renomer), copier et supprimer des nœuds (ou fichiers). | ||
- | R: Actualiser l'arbre, utile si les fichiers ont changés en dehors de Vim | ||
- | ?: Commutation entre l'aide rapide et l'explorateur NERD Tree | ||
- | Ctrl +w puis w: Passer de l'explorateur NERD Tree à la fenêtre d'édition des fichiers | ||
- | |||
- | </note> | ||
- | |||
- | * On installe vim-airLine améliorer le statusline. | ||
- | |||
- | <code user>git clone https://github.com/bling/vim-airline.git ~/.vim/bundle/vim-airline</code> | ||
- | |||
- | On ajoute la ligne suivante dans ''~./vimrc'' : | ||
- | |||
- | <code>let g:airline#extensions#tabline#enabled = 1</code> | ||
- | |||
- | <note tip> | ||
- | * Après avoir ouvert plusieurs fichiers, pour passer d'un fichier à l'autre, le curseur entant placé dans l'encadré d'édition d'un fichier: | ||
- | |||
- | - On peut utiliser la commande vim '':register'' puis on choisit son buffer ; | ||
- | - On peut faire '':bn'' (pour Buffer Next) ou '':bp'' (pour Buffer Prevous) ; | ||
- | |||
- | * On peut se faire un racourcit : | ||
- | |||
- | - On édite ''~/.vimrc'' | ||
- | - on ajoute : | ||
- | |||
- | <code> | ||
- | nmap <C-n> :bn<CR> | ||
- | nmap <C-p> :bp<CR> | ||
- | </code> | ||
- | |||
- | * Pour utiliser la souris | ||
- | |||
- | <code> | ||
- | set mouse=a | ||
- | </code> | ||
- | </note> | ||
- | |||
- | |||
- | * Utilisation de la souris pour naviger entre les fenêtres, et sélectionner dans une seule fenêtre (i.e mode visuel de vim) | ||
- | |||
- | On édite ''~/.vimrc'' | ||
- | |||
- | On ajoute : | ||
- | <file> | ||
- | set mouse=a | ||
- | </file> | ||
- | |||
- | * On ajoute le plugin syntastic | ||
- | |||
- | Voir : https://github.com/scrooloose/syntastic | ||
- | |||
- | <code user>git clone https://github.com/scrooloose/syntastic.git ~/.vim/bundle/syntastic</code> | ||
- | |||
- | * On ajoute le plugin tagbar | ||
- | |||
- | <code user>git clone https://github.com/majutsushi/tagbar.git ~/.vim/bundle/tagbar</code> | ||
- | |||
- | <note tip> | ||
- | Ajout dans '' ~/.vimrc '' | ||
- | <code> | ||
- | "Racourci clavier pour basculer avec Tagbar | ||
- | nmap <F2> :TagbarToggle<CR> | ||
- | </code> | ||
- | </note> | ||
- | |||
- | |||
- | * Ajout de l'autocomplétion : | ||
- | <note tip> | ||
- | Ajout dans '' ~/.vimrc '' | ||
- | <code> | ||
- | "Pour utiliser un plugin d'autocomplétion | ||
- | set omnifunc=syntaxComplet#Complete | ||
- | </code> | ||
- | </note> | ||
- | ===== Configurations et installation de Django avec PostgreSQL===== |