デフォルトでは、検証の失敗時に入力要素の下にZendバリデーターメッセージを表示したくありませんが、要件に従ってZend検証メッセージが必要です。
助言がありますか?
デフォルトでは、検証の失敗時に入力要素の下にZendバリデーターメッセージを表示したくありませんが、要件に従ってZend検証メッセージが必要です。
助言がありますか?
私は解決策を得ました。解決策はここにあります。
使っていた
<?php echo $this->formRow($form->get('username')); ?>
今、私はこれをに置き換えました
<?php echo $this->formElement($form->get('username')); ?>
そして、ビューの要件に従ってエラーメッセージを取得するために、
echo $this->formElementErrors($form->get('username')); // Errors must be capital letter
すべての回答をありがとう。
申し訳ありませんが、あなたの答えはあなたの最初の質問に対する答えではありません!
あなたのタイトルは、アプリケーション全体で検証メッセージを無効にする方法の一般的な解決策を求めています。その解決策は次のとおりです。
<?php
namespace YourApp;
use Zend\Form\View\Helper\FormRow;
class Module
{
public function getViewHelperConfig()
{
return array(
'factories' => array(
'formRow' => function($sm) {
$helper = new FormRow();
$helper->setRenderErrors(false);
return $helper;
}
),
);
}
?>
formCollection()
まず、 -ViewHelperを使用しないでください
2番目:formRow()
-ViewHelperを使用してフォームをレンダリングし、3番目のパラメーターをfalseに設定します。あなたはここでこれを見ることができます:Zend\Form\View\Helper\FormRow#157
echo $this->formRow($element, $labelPosition, $renderErrors);
$element
レンダリングするフォーム要素である必要があります。つまり、次のようになります。$this->form->get('elementName')
$labelPosition
デフォルト値が必要な場合は、単にnullに設定できます
$renderErrors
エラーをレンダリングする必要があるかどうかを示すブール値です