0

Django Webサイトがあり、RESTAPIを作成しました。ビュー関数には、REST URLに関するドキュメントがあり、RESTURLのAPIドキュメントを生成したいと思います。ビュー関数は次のようになります。

def genres(request):
    """
    Url: /api/genres/
    Parameters: None
    Returns: list of genres { { "id":1, "name":"action" }, {...} }
    """
    pass

しかし、myproject.api.viewsでsphinxを実行すると、PythonでAPIを呼び出すためのhtmlドキュメントが表示されます。REST APIのようにドキュメント化するようにsphinxを構成する方法はありますか?

または、自分でドキュメント文字列からドキュメントを生成するスクリプトを作成する方がよいでしょうか。

4

1 に答える 1

0

sphinxcontribを確認してください-httpdomain

autodocを使用してdocstringを使用し、httpdomain拡張子を使用して.. http:get :: /users/スタイルディレクティブを使用できます。このソリューションには問題があり、関数のシグネチャも表示されます。この問題を回避するために、Sphinxソースコードを少しいじって、最終的なドキュメントに署名を追加しない元のautodoc拡張機能のコピーを作成しました。

ファイルはhttps://gist.github.com/4589457にあります

指示:

  1. sphinxパスのapplication.pyを要点のapplication.pyに置き換えます(私のシステムのパスは/Library/Frameworks/Python.framework/Versions/Current/lib/python2.7/site-packages/Sphinx-1.1.3-py2です.7.egg / sphinx /)
  2. extフォルダーにsimpleautodoc.pyを追加します
  3. .. http:get :: / users / styleディレクティブを使用するには、conf.pyにhttpdomain拡張子を追加します。
  4. autoの代わりに接頭辞autosimpleを使用してautodocを使用するのと同じようにsimpleautodocを使用します(たとえば、autoclassの代わりにautomodule autosimpleclassの代わりにautosimplemoduleなど)
  5. example.pyファイルは、docstringをフォーマットする方法のサンプルを示しています
于 2013-01-21T14:50:02.837 に答える