カスタム検証をフォームに追加する必要があります。記事のフォームを追加します。
hook_FORM_ID_validate()
のようなものがこれを処理することを期待していましたが、APIドキュメントで関連するものを見つけることができません。
フォームにカスタム検証を追加する方法は何ですか?
次のように、 hook_form_FORM_ID_alter()
の任意のフォームに任意の数の検証関数を追加できます。
function mymodule_form_article_node_form_alter(&$form, &$form_state, $form_id) {
// There will already be some validate handlers added so you need to add to the
// array rather than overwrite it.
$form['#validate'][] = 'mymodule_article_form_validate';
// As mentioned above you can add as many as you want
$form['#validate'][] = 'mymodule_article_form_validate_2';
}
function mymodule_article_form_validate($form, &$form_state) {
// Random example, if the title is 'test' throw an error
if ($form_state['values']['title'] == 'test') {
form_set_error('title', 'Title cannot be "test"');
}
}
hook_form_alter
を使用して、関数を #validate
プロパティに追加する必要があります。