3

これまでのところ、 django-rest- swagger が v0.1.10 から Markdown 構文で docstring をサポートしていることを知っています。しかし、ドキュメントを見ようとすると、解析して HTML コードに変換するのではなく、プレーン テキストとして表示されます。

ここに画像の説明を入力

私は使用しています:

Django==1.5
Markdown==2.3.1
djangorestframework==2.3.10
django-rest-swagger==0.1.11

SWAGGER_SETTINGS = {
    "exclude_namespaces": [], # List URL namespaces to ignore
    "api_version": '0.1',  # Specify your API's version
    "api_path": "",  # Specify the path to your API not a root level
    "enabled_methods": [  # Specify which methods to enable in Swagger UI
        'get',
        'post',
        'put',
        'patch',
        'delete'
    ],
    "api_key": '', # An API key
    "is_authenticated": True,  # Set to True to enforce user authentication,
    "is_superuser": False,  # Set to True to enforce admin only access
}

API サンプル コード関数ベース ビュー:

@api_view(['POST'])
def dummy(request):
    '''
    Lorem ipsum `dolor` sit amet, consectetur adipiscing elit. Etiam sodales lacus at _nulla_ fringilla fringilla. 

    ### Consectetur adipiscing:

       * __dummy_var__: Nunc ut erat justo. Duis turpis augue, posuere a ornare sed,
       * another: Vestibulum suscipit congue neque sed faucibus.
       * `code`: Cras sit amet ullamcorper ipsum.
    '''
    pass

API を直接参照すると、説明が適切に翻訳/レンダリングされます。

ここに画像の説明を入力

何か不足していますか?

4

2 に答える 2

2

バージョン v0.2.0 以降、django-rest-swagger でマークダウンが利用可能になりました!

マークダウン パッケージを明示的にインストールするだけで済みます (自動的にはインストールされません)。

pip install markdown
于 2014-11-03T21:46:41.280 に答える
1

私はあなたが何かを逃しているとは思わない。Markdown は、DRF Browsable API ビューでのみ使用されます。Swagger は Markdown を使用しません。代わりに、DRF はそれを使用して説明をレンダリングします。

Swagger は、ajax を使用して、説明とメモを文字列として渡すだけです。次に、両方を html としてレンダリングします。docs 文字列に html タグを含めることで確認できます。そのため、Markdown レンダラーはまったく使用していません。

DRF は Markdown を使用して説明を表示します。そのため、Browsable API では機能しますが、api-docs では機能しません。

于 2014-01-13T16:01:11.427 に答える