Plugin to catch bad style specific to Django Projects.
Project description
flake8-django
A flake8 plugin to detect bad practices on Django projects.
Installation
Install from pip with:
$ pip install flake8-django
Testing
flake8-django uses pytest for tests. To run them use:
$ pytest
Run coverage report using:
$ pytest --cov=.
List of Rules
Rule | Description |
---|---|
DJ01 |
Avoid using null=True on string-based fields such as CharField and TextField |
DJ03 |
Avoid passing locals() as context to a render function |
DJ06 |
Do not use exclude with ModelForm, use fields instead |
DJ07 |
Do not use __all__ with ModelForm, use fields instead |
DJ08 |
Model does not define __str__ method |
DJ12 |
Order of Model's inner classes, methods, and fields does not follow the Django Style Guide |
DJ13 |
@receiver decorator must be on top of all the other decorators |
More details about each of the Rules can be found on the wiki page.
Optional Rules - Disabled by Default
Rule | Description |
---|---|
DJ10 |
Model should define verbose_name on its Meta inner class |
DJ11 |
Model should define verbose_name_plural on its Meta inner class |
To enable optional rules you can use the --select
parameter. It's default values are: E,F,W,C90.
For example, if you wanted to enable DJ10
, you could call flake8
in the following way:
flake8 --select=E,F,W,C90,DJ,DJ10
You could also add it to your configuration file:
[flake8]
max-line-length = 120
...
select = C,E,F,W,DJ,DJ10
Licence
GPL
Thanks
@stummjr for teaching me AST, and what I could do with it. His blog is cool.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
flake8-django-1.1.5.tar.gz
(8.3 kB
view hashes)
Built Distribution
Close
Hashes for flake8_django-1.1.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | df77ada19fa7838bf1894d98d92cf5cbe65e20337eb7be21d76781883c237c32 |
|
MD5 | 4183d60783f7785f12b859734543915f |
|
BLAKE2b-256 | 9078e2aa183415d8cab1b2c178b16af2eccaff1d696d6152b440d032ce03143b |