Comments on: Vous pouvez mettre du code dans __init__.py http://sametmax.com/vous-pouvez-mettre-du-code-dans-__init__-py/ Du code, du cul Sat, 07 Nov 2015 11:08:18 +0000 hourly 1 http://wordpress.org/?v=4.1 By: LeSocraTIC http://sametmax.com/vous-pouvez-mettre-du-code-dans-__init__-py/#comment-14818 Sat, 12 Oct 2013 16:25:38 +0000 http://sametmax.com/?p=3472#comment-14818 Très cool! Merci.

]]>
By: foxmask http://sametmax.com/vous-pouvez-mettre-du-code-dans-__init__-py/#comment-10409 Thu, 27 Jun 2013 20:15:39 +0000 http://sametmax.com/?p=3472#comment-10409 cool merci !

]]>
By: Sam http://sametmax.com/vous-pouvez-mettre-du-code-dans-__init__-py/#comment-10406 Thu, 27 Jun 2013 17:57:39 +0000 http://sametmax.com/?p=3472#comment-10406 Nan, c’est pas une bonne idée. Met ça dans un fichier base.py et importe juste le nécessaire dans __init__ sinon un jour quelqu’un va vouloir importer forms.un_truc, et ça va lancer le code du __init__ alors que lui il voulait juste un_truc.

]]>
By: foxmask http://sametmax.com/vous-pouvez-mettre-du-code-dans-__init__-py/#comment-10400 Thu, 27 Jun 2013 15:18:16 +0000 http://sametmax.com/?p=3472#comment-10400 @sam
je n’ai pas de forms.py ni de models.py mais un dossier forms et un dossier models et j’ai mis dans le __init__.py de chacun, ce qui est commun à toute mon appli.

donc partant de ton commentaire :
> Je vous déconseille de mettre trop de code dans le fichier __init__.py, notamment du code métier.
je me demandais si j’avais bien fait de le faire comme ça.

]]>
By: kontre http://sametmax.com/vous-pouvez-mettre-du-code-dans-__init__-py/#comment-10385 Wed, 26 Jun 2013 22:24:43 +0000 http://sametmax.com/?p=3472#comment-10385 J’ai eu un instant d’incompréhension aussi : c’est aliasing comme un alias, pas comme le lissage des bordures dans les affichages 3D.

Ca peut servir aussi pour éviter les from bidule.machin import Machin en ayant uniquement from bidule import Machin (avec from .machin import Machin dans le __init__.py).

]]>
By: Sam http://sametmax.com/vous-pouvez-mettre-du-code-dans-__init__-py/#comment-10384 Wed, 26 Jun 2013 20:41:45 +0000 http://sametmax.com/?p=3472#comment-10384 Par exemple :

from bidule import Truc
OldTrucName = Truc

Ce qui permet de faire des versions de transition quand on fait du deprecated.

]]>
By: residante http://sametmax.com/vous-pouvez-mettre-du-code-dans-__init__-py/#comment-10382 Wed, 26 Jun 2013 19:56:43 +0000 http://sametmax.com/?p=3472#comment-10382 Globalement ça sert à exposer l’api publique d’un projet. En tout cas c’est comme ça que je l’utilise :)

Sinon c’est quoi l’Aliasing dans ce contexte ?

]]>
By: Sam http://sametmax.com/vous-pouvez-mettre-du-code-dans-__init__-py/#comment-10380 Wed, 26 Jun 2013 19:32:27 +0000 http://sametmax.com/?p=3472#comment-10380 J’ai pas compris foxmask. Poste une arbo et le contenu des fichiers.

]]>
By: foxmask http://sametmax.com/vous-pouvez-mettre-du-code-dans-__init__-py/#comment-10379 Wed, 26 Jun 2013 18:54:19 +0000 http://sametmax.com/?p=3472#comment-10379 avec Django je me sers des __init__.py dans ds dossier models, forms’pour avoir des modèles distincts par service.c’est une connerie ?

]]>
By: martin http://sametmax.com/vous-pouvez-mettre-du-code-dans-__init__-py/#comment-10377 Wed, 26 Jun 2013 18:12:57 +0000 http://sametmax.com/?p=3472#comment-10377 Et je reviens aussi avec mes fichiers .pth

Vous pouvez aussi y mettre du code qui s’exécute automatiquement:

Dans un fichier truc.pth:


import sys; exec(''.join(f) if __name__ == 'site' else '', {})
if vous(voulez):
vous pouvez exécuter n'importe quoi ici ici

]]>