###前提・実現したいこと
- CakePHP 3 で、複数選択可能なチェックボックスを使いたい
- チェックボックスは子テーブル(hasMany の関係のテーブル)の値
###発生している問題・エラーメッセージ
- validation は動いているのですが、常にエラーになってしまいます
###該当のソースコード
テンプレートでは、以下のようにして子テーブル(sub_tables)の hoge_id を表示しています。
echo $this->Form->input('sub_tables.0.hoge_id', ['multiple' => 'checkbox']);
テンプレートの指定がおかしいのかとおもっているのですが、解決策がみつかりません。
どなたかご教授いただけますと幸いです。
追記
php
1// 親テーブル 2$this->hasMany('HouseRooms', [ 3 'foreignKey' => 'house_id' 4]); 5 6// 子テーブル 7$this->belongsTo('Houses', [ 8 'foreignKey' => 'house_id', 9 'joinType' => 'INNER' 10]); 11$this->belongsTo('MasterRooms', [ 12 'foreignKey' => 'master_room_id', 13]); 14 15// controller 16$house = $this->Houses->newEntity(); 17$house = $this->Houses->patchEntity($house, $request->data, ['associated' => ['HouseRooms']]); 18if ($House->errors()) { 19 $this->Flash->error('入力に誤りがあります。'); 20 return false; 21} 22 23// HouseRoomsTable 24$validator 25 ->integer('master_room_id') 26 ->requirePresence('master_room_id', '部屋を選択してください。') 27 ->notEmpty('master_room_id', '部屋を選択してください。') 28;
// テーブル houses ----- id name ↑ 1:多 ↓ house_rooms ----- id house_id master_room_id master_rooms ----- id name
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/11 12:36
2016/12/11 12:55
2016/12/11 13:47 編集
2016/12/11 13:41
2016/12/11 14:21 編集
2016/12/12 00:22
2016/12/12 02:41
2016/12/15 09:08
2016/12/15 09:13
2016/12/15 12:10 編集
2016/12/18 04:08
2016/12/18 05:02
2016/12/18 05:13
2016/12/19 14:25 編集
2016/12/19 20:57 編集