Cakephp:如何验证我的选择选项,以便限制所选选项的重复

问题描述 投票:0回答:1

我有一个选择下拉菜单,我希望用户为数据库中的字段选择两个选项。问题是我如何使其禁止重复选择选项,目前它正在保存所有选项,即使它们相同。

我的 add.ctp 中用于选择选项的代码是:

echo $this->Form->select("ProgrammeChoice.programme_code.0",$finals);
echo $this->Form->select("ProgrammeChoice.programme_code.1",$finals);

变量

$finals
从数据库中的另一个表中获取选择选项,它位于控制器中,代码是:

$finals = array_merge($filtered_programs,$non_preq_programs);

所以,我需要帮助来验证我的选择菜单,以拒绝提交时的重复选择。

php cakephp cakephp-2.0
1个回答
0
投票

创建自定义验证规则并比较此处所述的值:http://book.cakephp.org/2.0/en/models/data-validation.html#adding-your-own-validation-methods

在验证方法中,您的数据存储在

$this->data
中。

它应该看起来与此类似:

public function compare($field1) {
    if($field1 === $this->data['ProgrammeChoice']['programm_code']['1']) {
        return false;
    }
    return true;
}
© www.soinside.com 2019 - 2024. All rights reserved.