Create models definitions document from your django project. This project help the documentation related to Django models.
Quick start
- Add "modelsdoc" to your INSTALLED_APPS setting like this
INSTALLED_APPS = ( ... 'modelsdoc', )
- Run python manage.py listing_models to listing model definition
- You can see the results of executing the command to tests/models.py.
Option
--app(-a)
You can pass specify app name. Listing only the specified app.
$ python manage.py listing_models --app polls
--output(-o)
It writes the results to the specified file.
$ python manage.py listing_models --output sample.rst
--format(-f)
You can choice output format. rst (reStructuredText) or md (Markdown). Default format is rst.
$ python manage.py listing_models --format md
Customize Settings
MODELSDOC_APPS
You can specify the apps and change the order.
# output only models of poll MODELSDOC_APPS = (polls,)
MODELSDOC_DISPLAY_FIELDS
You can specify the field value and change the order.
MODELSDOC_DISPLAY_FIELDS = ( ('Fullname', 'verbose_name'), ('Name', 'name'), ('Type', 'db_type'), ('PK', 'primary_key'), ('Unique', 'unique'), ('Index', 'db_index'), ('Null/Blank', 'null_blank'), ('Comment', 'comment'), )
MODELSDOC_MODEL_OPTIONS
# TODO more documented
MODELSDOC_MODEL_OPTIONS = ( 'unique_together', 'index_together', 'ordering', 'permissions', 'get_latest_by', 'order_with_respect_to', 'db_tablespace', 'abstract', 'swappable', 'select_on_save', 'default_permissions', 'default_related_name' )
Other settings
# TODO more documented
MODELSDOC_OUTPUT_TEMPLATE = 'modelsdoc/models' MODELSDOC_OUTPUT_FORMAT = 'rst' # default format MODELSDOC_MODEL_WRAPPER = 'modelsdoc.wrappers.ModelWrapper' MODELSDOC_FIELD_WRAPPER = 'modelsdoc.wrappers.FieldWrapper' MODELSDOC_INCLUDE_AUTO_CREATED = True
Python and Django Support
Django.1.5 | Django1.6 | Django1.7 | Django1.8 | Django1.9 | Django1.10 | Django1.11 | Django2.0 | |
Python 2.7 | â—¯ | â—¯ | â—¯ | â—¯ | â—¯ | â—¯ | â—¯ | Â |
PyPy | â—¯ | â—¯ | â—¯ | â—¯ | â—¯ | â—¯ | â—¯ | Â |
Python 3.3 | Â | Â | â—¯ | â—¯ | Â | Â | Â | Â |
Python 3.4 | Â | Â | â—¯ | â—¯ | â—¯ | â—¯ | â—¯ | â—¯ |
Python 3.5 | Â | Â | Â | â—¯ | â—¯ | â—¯ | â—¯ | â—¯ |
Python 3.6 | Â | Â | Â | â—¯ | â—¯ | â—¯ | â—¯ | â—¯ |
License
MIT Licence. See the LICENSE file for specific terms.
Authors
- tell-k
- wanshot
History
0.1.11(Nov 28, 2019)
- Add models.yaml template file.
0.1.10(Nov 28, 2019)
- Add Support YAML format.
0.1.9(Feb 8, 2018)
- Fix Set section length dynamically. Thanks to wanshot
0.1.8(Dec 3, 2017)
- Add Support Django2.0
0.1.7(May 29, 2017)
- Add Support Django1.11 and Python 3.6
0.1.6(Nov 4, 2016)
- Add Support Django1.10
0.1.5(May 4, 2016)
- Add Support Python3.5 and Django1.9
0.1.4(Sep 23, 2015)
- Fixed bug. When print models, linebreak is ignored.
- Add ManyToManyField's info on "listing_models" results.
0.1.3(Jul 19, 2015)
- Fixed bug. install test code.
- Add new option "MODELSDOC_INCLUDE_AUTO_CREATED"
0.1.2(Jun 21, 2015)
- Bug fixed. Not include output templates.
0.1.0(Jun 21, 2015)
- First release