DB Designer4からPropelのスキーマを作成

ウェブアプリケーションのDB設計を行うときに、何かツールを使っていますか?
私はDB Designerというツールを使うことが多いです。
このツールについてはDBDesigner 4 日本語化サイトで詳しく解説されていますし、日本語化のパッケージも配布されていますので必見です。


そして、CakePHPで、このDB Designerと連携するdbdesigner2cakeが紹介されていました。
DB DesignerとCakePHPの連携「dbdesigner2cake」
MySQLを使うのであれば確実に利用すべきではないかと思えるほどです。

では、同じようなことがsymfonyではできないのかというと、DB Designerで作成されたデータXMLからPropelのスキーマ(schema.xml)へ変換してくれるツールが公開されています。
DB Designer 4 TO Propel Schema Converter

このツールを利用すればsymfonyでもDB Designerを最大限に利用することができます。
しかし、上記ツールだと少々融通が利かないところがあります。
たとえば、packageを指定したかったり、テーブルのphpNameを指定したい場合は変換後に修正する必要があったり、日本語のコメントが正しく表示されないので削除したりと。。。

できるものなら、変換したXMLに手を加えなくて済むようにしたいなぁ。。

というわけで、上記サイトを参考に手を加えてみました。
DB DesignerからPropelのschema.xmlを作成

  • packageの指定がデータベースのCommentsで行える
  • phpNameの指定がテーブルのCommentsで行える
  • カラムのコメントは変換しない


はじめてxslを触りましたが、すごいですねぇ。。