I want to autogenerate documentation to my code from docstrings. I have some basic class meant to store some data:
class DataHolder:
"""
Class to hold some data
Attributes:
batch: Run without GUI
debug (bool): Show debug messages
"""
batch: bool = False
debug: bool = False
name: str = 'default'
"""Object name"""
version: int = 0
"""int: Object version"""
My rst
file:
DataHolder
==========
.. autoclass:: data_holder.DataHolder
:members:
I have documented each attribute in a different way to show the difference, here is the output:
It seems like Sphinx cannot connect the Attributes
section with the real attributes, that's why it cannot display their default value.
The final output I would like to achieve is the outcome as for the version
field with the docstring defined as for batch
. I want to display the attribute name with default value and type, but taken from type annotations. Looks like Sphinx is ignoring the type annotations in this case.
My sphinx extensions:
extensions = [
'sphinx.ext.viewcode',
'sphinx.ext.autodoc',
'sphinxcontrib.napoleon',
]
What can I do to achieve such behavior? I can't find any good examples for such use case.
from Documenting class attributes with type annotations
https://www.wizweb.in
ReplyDeleteWizweb Technology is a leading software development company custom website design, software development, SMS Provider, Bulk sms, transactional sms, promotional sms, mobile app development, Hosting Solution, seo(search engine optimization) and Digital marketing etc.