1

私はCakePHPの初心者です。

テーブル「Issue」を編集したい。このテーブルには、外部キーによって「Priority」と呼ばれる別のテーブルに関連するフィールド「priority_id」が含まれています。このテーブルには、「Severe」、「Disaster」、「ToDo」の3つの値が含まれています。ユーザーは、コンボボックス(入力選択)を使用して優先順位を選択できます。

優先度は次のように読み込まれます。

$priorities = $this->Issue->Priority->find('list');

これは私のために働きます。

「選択」と呼ばれるコンボボックスに4番目のオプションを追加する必要があります。この値はデフォルト値になります。この値が選択されている場合、ユーザーはフォームを送信できません。動機は、最初の値をランダムに送信するのではなく、ユーザーに意味のある値の1つを選択するように強制することです。

1)配列$ priorityを埋めるにはどうすればよいですか?2)フォームを検証するにはどうすればよいですか?

ありがとう

4

1 に答える 1

2

issues/add.ctpビューとissues/edit.ctpビューで、2番目のパラメーターとして$ form-> input()メソッドに送信されるoptions配列に空のキーを追加します。

echo $form->input('priority_id', array('empty' => 'Choose'));

これにより、コンボボックスの上部に「Choose」というテキストのオプションが追加され、オプションの値は空の文字列になります。

Issueモデルでは、priority_idフィールドの検証を追加できます。

var $validate = array(
  'priority_id' => array('numeric')
);
于 2008-10-16T08:51:12.700 に答える