2012-01-11 1 views
0

私はsetattr()を使って、動的に生成されたクラスのメソッドと属性を作るのに多くの使い方を見出しました。私はまた、スフィンクスを使用してドキュメントを作成しています。これは素晴らしいことです。スフィンクスの自動サマリと動的メソッド

属性とメソッドが動的な場合、私はsphinxのautosummary機能を使用できません。これを行う巧妙な方法はありますか?動的メソッドと属性は、初期化時に作成されます。

+0

動的メソッドの '' __doc__''プロパティを設定していますか? – jterrace

+0

はい、help()コマンドを使用するとドキュメントが動作しますが、メソッドがクラスが初期化されるまで生成されるため、sphinxはautoclassにそれらをインクルードしません。 – alex

答えて

0

は(それは少し奇抜なのです)、これを試してみてください:

  1. は、あなたのconf.pyファイルにあなたのクラスのインスタンスを作成します。
  2. さまざまな動的メソッドの__doc__要素を1)で作成したインスタンスからクラスの出力にコピーするには、イベントを使用してハンドラ(書き込む必要があります)を起動します。

これは単純な解決策でも簡単ではないかもしれませんが、おそらく可能ではないかもしれませんが、適切なタイミングで何かを起こす方法を見つけ出すことができればうまく動作します。