ネイティブ 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');
}
2 番目の解決策:
\Fuel\Core\Validation クラスを独自のものに置き換えて拡張します。このようにして、insert_error() メソッドを Validation クラス内に直接追加し、次のエラーを追加できます。$this->errors['field_name'] = 'Error message';
[編集] 2 番目のソリューションを使用したい場合は、必ず Github トラッカーで機能リクエストを送信してください :)