cakephp3を勉強し始めた者です。
現在フォーム画面の作成をローカルで開発しているんですがバリデーションがうまくかからない状態で止まってしまいました。
画面には以下の内容があります。
・emailの入力フォーム
・生年月日をプルダウンで選択
・送信ボタン
email、生年月日がそれぞれ入力、選択されていない場合に送信ボタンが押されないようにしたいのですが、emailはバリデーションがかかるものの生年月日がうまくいきません。恐らく_buildSchemaのaddField('day', ['type' => 'date']);と_buildValidatorのnotEmpty('day', '入力してください?');の部分が上手くいっていないのが分かるのですが、他に何を指定すればいいのかわかりません。
こんな初歩的な質問で申し訳ございませんがご教授をお願いいたします。
php
1protected function _buildSchema(Schema $schema) 2 { 3 return $schema 4 ->addField('email', ['type' => 'email']) 5 ->addField('day', ['type' => 'date']); 6 } 7 8 protected function _buildValidator(Validator $validator) 9 { 10 return $validator 11 ->notEmpty('email', '入力してください') 12 ->notEmpty('day','入力してください'); 13 14 15 }
ctp
1// ビューです 2<?= $this->Form->input('email',['type'=>'email']); ?> 3<?= $this->Form->input('day',['type'=>'date', 'dateFormat' => 'YMD', 'monthNames' => false, 'maxYear' => date('Y'), 'minYear' => date('Y') - 50, 'empty' => '---']); ?> 4<?= $this->Form->button('送信'); ?> 5<?= $this->Form->end(); ?>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/03/06 04:17