Create models definitions document from your django project.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
modelsdoc
tests
.gitignore
.travis.yml
LICENSE.rst
MANIFEST.in
README.rst
setup.cfg
setup.py
tox.ini

README.rst

Create models definitions document from your django project. This project help the documentation related to Django models.

travis coveralls.io latest version license requirements status

Quick start

  1. Add "modelsdoc" to your INSTALLED_APPS setting like this
INSTALLED_APPS = (
    ...
    'modelsdoc',
)
  1. Run python manage.py listing_models to listing model definition

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.9(Feb 8, 2018)

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