У меня есть приложение Pyramid с Carnice, в котором я определил Resources
(а не Services
), и мне интересно, можно ли сгенерировать Sphinx для этого проекта с помощью Интеграция Sphinx от Cornice?
Мне удалось создать какую-то документацию, но похоже, что большинство функций недоступны для ресурсов, только для служб, например, документируя код пирамиды таким образом:
@resource(collection_path='/parse/', path='/parse/{id}', cors_origins=('*',), description="Temporary description.")
class Parser(object):
@view(renderer='json')
def collection_post(self):
"""
Some description for this function...
:param str smth: Some parameter
:return: Returns something
"""
return
и создание документации Sphinx следующим образом:
.. cornice-autodoc::
:modules: my_app.views.views_parser
:ignore: parser
приведет к нескольким ненужным и нескольким недостающим частям в документации:
- имена сервисов (фактически имена ресурсов) перепутаны,
- сама функция
collection_post
не документирована, - нет необходимости документировать как
collection_path
, так иpath
из объявленияresource
):
(пример фрагмента из сгенерированной документации)
Служба Collection_Parser в /parse/
Временное описание.
ПОЧТА
Ответ: json
Служба парсера в /parse/{id}
Временное описание.
Я хотел бы знать следующее:
- как изменить имена, сгенерированные в документации (
Parser
вместоCollection_Parser
), - как «игнорировать» некоторые модули с оператором
:ignore:
(например, я не хочу документировать часть/parse/{id}
), - как документировать функции в Ресурсах, поскольку размещение блока комментариев просто игнорируется (в моем случае
collection_post
)
...и многое другое...
Похоже, это либо невозможно, либо вообще не задокументировано. Если это невозможно, есть ли другое (хотя бы полуавтоматическое) решение для документирования моего проекта?