Pydantic モデルの docstring やフィールドの description を ER 図に追加するための erdantic プラグインです。デフォルトでは description を 1 列追加し、環境変数で好きな属性を増やせます。
- Pydantic v2 モデルの docstring をテーブル下部の説明行として表示
- 各フィールドの description(および任意の属性)を ER 図に追加列として出力
ERDANTIC_FIELDS環境変数でdescription,title,...のようにカンマ区切り指定が可能- erdantic のカスタムスタイルを同梱し、すぐに利用できる CLI を提供
- Python 3.11 以上
- Graphviz(
pygraphvizが erdantic 依存で入るため、システムに Graphviz 本体が必要です)
pip install "git+https://github.com/emuni-kyoto/erdantic-fields.git"from erdantic import EntityRelationshipDiagram
from erdantic_fields import setup_pydantic_plugin_with_description
from sample import User # サンプルの Pydantic モデル
setup_pydantic_plugin_with_description()
diagram = EntityRelationshipDiagram()
diagram.add_model(User)
diagram.draw("output/user.png")python -m erdantic_fields sample.User --output output/schema/knowledge.png--output は Graphviz が対応する拡張子(png / svg など)を指定できます。指定先ディレクトリが無い場合は自動作成します。
環境変数 ERDANTIC_FIELDS をカンマ区切りで指定すると、Field が持つ属性値を列として追加します。
ERDANTIC_FIELDS="description,title,example" ; erdantic-fields sample.User