symfony generate:moduleで生成されるスケルトンを変更する
defaultではsymfonyフレームワーク内にあるskeletonディレクトリを基に作成されるが、projectのdataディレクトリにskeleton/moduleを置くとそちらを参照するようになります。
sfGenerateModuleTask.class.phpより
if (is_readable(sfConfig::get('sf_data_dir').'/skeleton/module')) { $skeletonDir = sfConfig::get('sf_data_dir').'/skeleton/module'; } else { $skeletonDir = dirname(__FILE__).'/skeleton/module'; }
とりあえずコピーして色々さわってみました。
$mkdir data/skeleton $cp -r path/to/symfony/lib/task/generator/skeleton/module data/skeleton/
data/skeleton/ `-- module |-- hoge ←ここは無視される |-- module | |-- actions | | `-- actions.class.php ←中身の変更可 | |-- fuga ←追加OK | | `-- bbb | `-- templates ←ファイルを削除する事もできる。ディレクトリごと削除も可 `-- test ←これは必須。無いとgenerateできない `-- actionsTest.php
・actions.class.phpの編集
・indexSuccess.phpの削除やファイル名変更
・module配下にディレクトリ追加
・templateのファイル追加
などもできました。
[symfony1.4.9]