【发布时间】:2023-03-10 11:14:01
【问题描述】:
我有一个表格,学生可以使用下拉列表输入科目。下拉列表从表中获取主题。我想验证这个下拉列表,以便学生只选择一次主题。主题正在循环播放。我该怎么做?
我的控制器
for ($i = 1; $i < sizeof($this->data['ApplicantOlevelQualification']['olevel_subject_code']); $i++) {
if ($this->data['ApplicantOlevelQualification']['olevel_subject_code'][$i] != "") {
$this->ApplicantOlevelQualification->create();
$this->ApplicantOlevelQualification->id = null;
$this->ApplicantOlevelQualification->set(array(
'applicants_detail_id' => $app_id,
'olevel_subject_code' => $this->data['ApplicantOlevelQualification']['olevel_subject_code'][$i],
'grade' => $this->data['ApplicantOlevelQualification']['grade'][$i],
'mark' => $this->data['ApplicantOlevelQualification']['mark'][$i],
'centre_number'=> $centre_number,
'candidate_number'=> $candidate_number,
'exam_body_code'=> $exam_body_code,
'year_written'=> $year_written,
)
);
我的 add.ctp
echo "<tr><td>" . $this->Form->label('Subject: ');
echo "</td><td>";
echo $this->Form->select("ApplicantOlevelQualification.olevel_subject_code.$s",$mySubjects);
echo "</td><td>";
型号
'olevel_subject_code' => array(
'numeric' => array(
'rule' => array('valids'),
),
),
【问题讨论】:
-
您应该使下拉主题由 $mySubjects 唯一。能否展示一下 $mySubjects 的代码,它是从哪里来的?
-
感谢您回复 Moyed。添加.ctp $mySubjects = $subjects;控制器 $subjects = $this->ApplicantOlevelQualification->OlevelSubject->find('list',array('fields'=>array('code','name')));
标签: validation cakephp cakephp-2.1 cakephp-model