我正在使用多个应用生成一个新的django项目。该项目的主要目标是创建REST API。现在,我正在使用狮身人面像,用
创建我所有项目的文档sphinx-quickstart
和
sphinx-apidoc -o doc/packages .
除URL外,一切正常。我希望将我的URL记录下来,作为一个很好的API,与其余的sphinx文档完全集成。
有可能吗?
答案 0 :(得分:2)
是的。这不是直接记录网址,但是我以这种方式将网址连接到视图文档:
制作一个类似于:
的sphinx扩展名from django.core.urlresolvers import get_resolver def setup(app): app.connect('autodoc-process-docstring', process_django_view) def process_django_view(app, what, name, obj, options, lines): if what=='function': res = get_resolver() if res.reverse_dict.has_key(obj): url_struct = res.reverse_dict[obj] lines[:0] = [ "| URL structure: %s\n" % url_struct[0][0][0] ]
然后你需要将它添加到你的conf.py中的扩展中,并加载到django环境中,如下所述:How to build sphinx documentation for django project
还有其他一些东西,比如url_struct中的正则表达式以及可以包含的参数。我自己也会搜索与不同域名对应的多个网址解析器。