原生Validation類不允許使用該類。
但我可以看到2個解決方案爲您的問題。
第一溶液(沒有測試,這只是爲了讓這個想法):
<?php
class CustomFieldError {
function rule_which_always_fail($val) {
return false;
}
}
function insert_error($validation, $field_name, $error) {
$validation->field($field_name)->->add_rule(array('CustomFieldError', 'rule_which_always_fail'))->set_message($error);
}
// You need to do that before $validation->run();
if ($duplicate_email) {
insert_error($validation, 'email', 'Duplicate email');
}
解決方法二: Replace and extends的\燃油\核心\驗證類自己。 這樣你就可以直接加入insert_error()方法的驗證類中,並加入錯誤$this->errors['field_name'] = 'Error message';
[編輯]如果你想使用第二個解決方案,也一定要提交他們在功能請求他們Github跟蹤器:)