コンボボックスセレクターに「Choose One」オプションを追加して、CakePHPで検証するにはどうすればよいですか?
-
03-07-2019 - |
質問
私はCake PHPの初心者です。
テーブル「Issue」を編集したい。このテーブルには、フィールド「priority_id」が含まれています。 " Priority"と呼ばれる別のテーブルに関連する外部キーによって。このテーブルには、「重大」、「災害」、「ToDo」の3つの値が含まれています。ユーザーはコンボボックス(入力選択)を使用して優先順位を選択できます。
優先度は次のようにロードされます:
$priorities = $this->Issue->Priority->find('list');
これは私には有効です。
「選択」という4番目のオプションをコンボボックスに追加する必要があります。この値はデフォルト値になります。この値が選択されている場合、ユーザーはフォームを送信できません。動機は、最初の値をランダムに送信するのではなく、意味のある値の1つをユーザーに選択させることです。
1)配列$ prioritiesを埋めるにはどうすればよいですか? 2)フォームを検証するにはどうすればよいですか
ありがとう
解決
issues / add.ctpおよびissues / edit.ctpビューで、2番目のパラメーターとして$ form-> input()メソッドに送信されるオプション配列に空のキーを追加します。例:
echo $form->input('priority_id', array('empty' => 'Choose'));
これにより、コンボボックスの上部に「選択」というテキストのオプションが追加され、オプションの値は空の文字列になります。
Issueモデルでは、priority_idフィールドの検証を追加できます。例:
var $validate = array(
'priority_id' => array('numeric')
);
所属していません StackOverflow