EthnaAdminどこにおく?

Ethnaの__ethna_info__の様なことをやってみたいがどこに置くか考え中。。。

Ethnaプロジェクトの中に置くといろいろ情報を取得しやすいのですが、その分Ethnaに依存しちゃうしコントローラーの指定とかあるので、ジェネレーター使ってファイルを作る形式にしないとだめなんですよね。

ただEthna的にはコマンドって外部から拡張しない仕様になっているので、ハンドラとジェネレーターを追加した場合には直接Ethnaのライブラリに上書きする必要があります。

そうするとPEARで管理できなくなるからどうしよう。。。Ethna本体でコマンドを拡張できるように変更してもらおうかな。今度じっくりソース読めるときにチャレンジしてみて、きれいに拡張できそうであればパッチ送ってみたいと思います。

もう1案あって、別フォルダでファイルとしてEthnaプロジェクトをみて、コントローラーを読み込まないで直接調べる。

いろいろ名前から探す必要や、標準以外の設定の場合には対応が面倒なのですが、Ethna側のコントローラーの作成とかがないので、ある意味楽なんですよね。

手元では別フォルダから、コントローラー作成して勝手に利用している検証をやってみましたが、結構危険なコードになったので考え中です(笑)

現状はethnaAdminをフォルダ構成に変更して、アクションの作成済みってところを編集のリンクを置いて、そこを選ぶとそのアクションのformを取得するところまでは完了。

その画面で編集すると、ファイルを書き換えるって荒業をやりたいと思っています!
本当は全体をYAMLとかでデータに落として、ExcelとかHtmlの画面仕様書を自動生成ってのが最終的な目標です。

DBのスキーマとコメントからExcelのデータベース仕様書を作成するコードは昔に作ったので、ソースコードから納品物の自動生成ってのがやりたいですね。

順番逆ですが、Subversionの履歴があれば開発できて、ドキュメントは納品にだけ必要なときってありますよね。。。