プルダウンの場合、コントローラーで「generateList」を使い、ビューで「selectTag」を使えば、結構簡単に実装することができますた。
でも、場合によっては、プルダウンじゃなく、チェックボックスにしたい場合もありまつ。
何度かチェックボックスにしようとがんばってみたのでつが、どーもうまくいきませんでつた(;´Д`)
Google先生で「cakephp checkbox」というキーワードで検索しても、参考サイトを見つけることができませんでつた。
しかし、昨日、以下のサイトを発見。
▼私的WEBサイト制作日誌 様
CakePHPでのマルチチェックボックス
何やら「habtm」というヘルパーがあるらすぃ!
なるほど、これを使うとチェックボックスをうまく操作できそうだすな!
上記サイトに「修正後ソース」が置かれていたようでつが、アダクスはダウンロードできず…。
そこで、上記サイトで紹介されていたcakePHPのサイトをのぞいてみますた。
▼cakePHP
Create Multiple Checkboxes Instead of a Multiple-Select in your Views
※開くのが遅い…気がする。
このサイトに書かれているように、実際にやってみますた。
※しかし、英語は難しいす…。
- 「app/views/helpers」ディレクトリに、上部のソースを「habtm.php」といファイル名で保存。
- 「CSSも書く」みたいでつが、ここはパスすますた。
- 次のコードを「app/config/tags.ini.php」として保存。
※てっきり、<?php ~ ?>で囲むのかと思ったら、この囲みはいらないようですた。 - コントローラーで、habtmを呼び出す。
※「var $helpers = array('Habtm');」 - プルダウンと同じように、コントローラーで「generateList」を使って入れる。
- Smartyを使っているので、{assign_assoc var=’ArrayName’}と{$habtm->checkboxMultiple(..)}を使って表示。
これでうまくチェックボックスが出ますた!!
まぁ、これを解決したのが今日の午前3:00だったんでつがね…(;´Д`)