改进django类的sphinx autodoc。
sphinxcontrib-django的Python项目详细描述
斯芬克森特里布·詹戈
斯芬克斯的django类autodoc输出的改进。
这将添加以下改进:
- 正确显示模型具有哪些字段。
- 正确显示表单包含的字段。
- 将模型字段记录为模型__init__()中的参数。
- 将外键和相关字段链接到引用类的文档。
- 从类中隐藏不相关的运行时信息,如declared_fieldsets、fieldsets和Meta。
- 允许链接到django文档的:django:setting:角色。(例如:django:setting:`site\u id`)
安装
用法:
pip install sphinxcontrib-django
添加到sphinx配置文件(conf.py):
extensions=['sphinx.ext.autodoc','sphinxcontrib_django',]
autodoc的工作原理是动态导入代码,并从 python类。因此,该项目应该能够导入django模型。 通常需要将以下内容添加到conf.py:
sys.path.insert(0,os.path.abspath('../src'))os.environ['DJANGO_SETTINGS_MODULE']='myapp.settings'django.setup()
要支持:django:setting:角色,请配置intersphinx:
intersphinx_mapping={'http://docs.python.org/':None,'https://docs.djangoproject.com/en/stable':'https://docs.djangoproject.com/en/stable/_objects',}
建议:
当你的项目使用芹菜时,也要包含celery.contrib.sphinx。 这将添加一个autotask::指令和:task:`app.tasks.my_task`角色。
其他伟大的扩展是:
- sphinx-autodoc-annotation:将python 3注释转换为docstring。
- sphinx.ext.graphviz:允许轻松创建关系图。
示例配置可能如下所示:
extensions=['sphinx.ext.autodoc',# The autodoc core'sphinx.ext.graphviz',# Support creating charts!'celery.contrib.sphinx',# Celery improvements!'sphinx_autodoc_annotation',# Parses Python 3 annotations'sphinxcontrib_django',# this module]