我将IP保存为数据库中的数值。当我获取它时,我使用带有和INET_NTOA SQL表达式的虚拟字段。
我希望IP是唯一的,因此我在模型中使用isUnique Validation规则。问题是此规则根据数据库中的数值验证IP地址。
有没有办法可以在验证之前修改此规则的字段值?另一个规则是“ip”,它需要IP作为地址而不是数值。
答案 0 :(得分:0)
我建议你创建一个custom validation rule来检查转换的 IP是否是唯一的。
…
'rule' => 'ipIsUnique',
…
// customize as needed
public function ipIsUnique($data) {
return $this->isUnique(array_map('ip2long', $data));
}