J'ai un modèle qui doit avoir un champ nommé complex
et un autre nommé type
. Ce sont les deux noms réservés python. Selon PEP 8, je devrais les nommer complex_
et type_
respectivement, mais django ne me permettra pas d'avoir des champs nommés avec un trait de soulignement final. Quelle est la bonne façon de gérer cela?Quel est l'idiome approprié pour nommer les champs du modèle django qui sont des noms réservés python?
5
A
Répondre
4
Il n'y a aucun problème avec ces exemples. Il suffit d'utiliser complex
et type
. Vous ne faites qu'observer dans une portée très limitée (la définition de classe elle-même). Après cela, vous serez en utilisant la notation y accéder point (self.type
), donc il n'y a pas d'ambiguïté:
Python 2.6.2 (release26-maint, Apr 19 2009, 01:58:18)
[GCC 4.3.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> class Foo(object):
... type = 'abc'
...
>>> f = Foo()
>>> f.type
'abc'
>>> class Bar(object):
... complex = 123+4j
...
>>> bar = Bar()
>>> bar.complex
(123+4j)
>>>
1
Voulez-vous vraiment utiliser l'argument db_column="complex"
et appeler votre domaine autre chose?
Questions connexes
- 1. Meilleure pratique pour renommer des noms de propriété/méthode qui sont des mots réservés?
- 2. Comment fonctionnent les champs du modèle Django?
- 3. Quelles sont les règles pour nommer les classes AS3?
- 4. Quels sont les noms de fichiers réservés aux diverses plates-formes?
- 5. Est-il possible de définir dynamiquement les noms des champs du modèle?
- 6. Présenter les données du dictionnaire python au modèle django.
- 7. Django: comment inclure des champs de modèle dans le list_display?
- 8. JavaScript: Dynamic Noms des champs
- 9. django: form.fields pas itérer exemple des champs
- 10. Quel est le meilleur endroit pour les classes python dans un projet Django?
- 11. Quel en-tête HTTP utiliser pour définir les noms des champs de formulaire (multipart/form-data)
- 12. Django champ choix admin dynamique peuplé par les champs du modèle de génériques clés étrangères
- 13. Django: Structure Modèle Django pour autoriser les types de champs arbitraires
- 14. Quand est-il approprié d'utiliser les processeurs de contexte Django?
- 15. Comment nommer des champs en utilisant Dynamic Linq?
- 16. Lire les options de champs d'un modèle Django
- 17. Django - spécifie quel gestionnaire de modèle l'administrateur Django doit utiliser
- 18. Django: Nom du modèle clash
- 19. python _ + django, est-ce du code compilé?
- 20. Puis-je utiliser des noms identiques pour les champs et les paramètres du constructeur?
- 21. Quel est le format approprié pour un postfichier apache benchmark?
- 22. Quel est le meilleur modèle pour les événements WPF?
- 23. Les requêtes de modèle Django asynchrones sont-elles possibles?
- 24. Quels sont les problèmes du modèle MVVM?
- 25. Django Python: Syntaxe Eval pour plusieurs champs créés à l'exécution
- 26. HTML DOC PDF XPS Quel est le format le plus approprié pour les documents?
- 27. Nom du plugin drupal qui donne des popups pour les entrées de champs
- 28. Python Django Modèle: Itérer par la liste
- 29. Comment créer des règles pour le plugin jquery validate avec des noms qui sont des tableaux?
- 30. Rechercher et remplacer: Quel est le raccourci approprié?
Techniquement, les exemples que vous avez donnés ne sont pas des mots réservés. Ils sont builtins. Les mots réservés (comme print ou lambda) causeront des problèmes réels. – jcdyer