La ligne est trop longue. Django PEP8
PEP8 info:
models.py:10:80: E501 line too long (83 > 79 characters)
Models.py:
field = TreeForeignKey('self', null=True, blank=True, related_name='abcdefgh')
Comment bien écrire cette ligne?
Je pense qu'il est juste d'ignorer ce pep8 règle pour django projets. Django lui-même fait cette exception près.
La question est bonne et pas du tout traduite
N'oubliez pas de PEP 8 lui-même – "savoir quand être incohérent, parfois style guide de recommandations ne sont pas applicables. En cas de doute, utilisez votre meilleur jugement. Regarder d'autres exemples et de décider quelle est la meilleure"
Si vous utilisez flake8, vous pouvez faire le linter ignorer cette erreur en ajoutant le commentaire
La question est bonne et pas du tout traduite
N'oubliez pas de PEP 8 lui-même – "savoir quand être incohérent, parfois style guide de recommandations ne sont pas applicables. En cas de doute, utilisez votre meilleur jugement. Regarder d'autres exemples et de décider quelle est la meilleure"
Si vous utilisez flake8, vous pouvez faire le linter ignorer cette erreur en ajoutant le commentaire
# noqa: E501
à la fin de la ligne (cf. flake8.pycqa.org/en/3.1.1/user/ignoring-errors.html).OriginalL'auteur Angelina | 2013-01-03
Vous devez vous connecter pour publier un commentaire.
C'est "correct", PEP8 juste drapeaux des lignes de plus de 79 caractères. Mais si vous êtes inquiète, vous pouvez l'écrire comme ceci:
Ou ceci:
Ou, vraiment, tout autre style que de casser la ligne en plusieurs lignes plus courtes.
ils sont très bien si vous utilisez le mot-clé et/ou une liste variable d'arguments.
Ils vont travailler lorsqu'une fonction est une liste fixe d'arguments, trop.
Hmm.. ils le font. Je pense avoir trouvé la seule chose que j'apprends aujourd'hui 😉
Ne vous arrêtez pas à un seul 😉
OriginalL'auteur mipadi
Je viens de trouver cette soigné programme appelé autopep8! https://github.com/hhatto/autopep8
Vous pouvez aussi le faire (de manière récursive):
Auto PEP8 ne fait sûr des modifications sur les fichiers, seulement un changement de mise en page, pas de code logique.
C'est génial! Merci!!!! 🙂 Lorsqu'il est utilisé conjointement avec pylint, j'ai failli ne pas manquer à l'aide d'un à part entière de l'IDE.
OriginalL'auteur umeboshi
C'est très subjectif. Je ferais, si j'étais suivantes E501 strictement:
J'ai l'habitude de considérer 100 trop long, pas 80.
c'est un guide de style pour le Python de la bibliothèque standard. Il est parfaitement bien pour envisager une autre longueur de la ligne est préférable.
Il est parfaitement bien si vous n'avez pas demandé spécifiquement sur pep8...
OriginalL'auteur Pavel Anossov
Si vous avez quelques ridicule longue chaîne qui n'est pas très pratique de briser en morceaux (à penser à des choses comme la Sentinelle de la Dsn, les occasionnels module dans le MIDDLEWARE ou INSTALLED_APPS), vous pouvez simplement mettre
# noqa
à la fin de la ligne et les linters ignore la ligne. À utiliser avec parcimonie toi et certainement pas pour le cas que vous avez demandé.OriginalL'auteur Árni St. Sigurðsson
J'ai l'habitude de diviser pour aligner les paramètres du niveau d'indentation plus profond que la ligne d'origine, comme:
Surtout si
TreeForeignKey
est quelque chose commeTreeForeignKeyWithReferencesToSomethingElse
, dans ce cas, tous les paramètres seraient commencer à l'extrême droite de la fenêtre si vous avez pris tous avec l'ouverture de la parenthèse. Si l'un des paramètres a un nom long commedefaultvalueforcertaincircumstances
, vous pourriez ne pas être en mesure de s'adapter à l'ensemble de la chose en moins de 80 colonnes:Je préfère aussi mettre plusieurs paramètres de la fonction sur la même ligne (sauf quand il n'a tout simplement pas regarder à droite; je ne suis pas un puriste!) de sorte que l'espace vertical n'est pas trop étendu, m'obligeant à passer plus de temps à faire défiler dans mon éditeur que ce qui serait autrement nécessaire.
OriginalL'auteur Kirk Strauser