Qbilinux 日記

Linux に関係することだけではなく,最近は一般的なコンピュータやガジェット関係についても記載してます.

cakephp3 の FormHelper の div タグ削除

cakephp2 までは

$this->Form->input('hoge', ['div' => false]);

とかってやれば input form で一時的に div タグはなくなっていたけど,cakephp3 では div を取り除くオプションはなくなったみたいですね.で,form の template をいじらないといけないみたい.

ということで,調べてみたところ

$this->Form->input('hoge', [
    'templates' => [
        'inputContainer' => '{{content}}'
    ]]);

となります.div タグの中を一時的に適当なものに変更したい場合には

'inputContainer' => '<div class="hogehoge">{{content}}</div>'

とかにすればいいみたい.

vendor/cakephp/cakephp/src/View/Helper/FormHelper.php の $_defaultConfig の templates 辺りにデフォルト定義が書かれていますので,参考にしながら変更したい場所で適当に修正していけば良いかもしれないですね.

それにしても div オプションがなくなったことは,div タグをなくしたいって要求は少なかったのかな?