最初に: これはアーキテクチャの問題です。技術的な問題を解決する方法には答えないでください。これはすでにいくつかの場所で行われています。fe: https://github.com/zendframework/zf2/issues/2761
わからないようです。ZF2 のフォーム要素は、必須とマークされているだけでなく、ハードコーディングされています。
例 \Zend\Form\Element\Select
public function getInputSpecification()
{
$spec = array(
'name' => $this->getName(),
'required' => true,
);
if ($validator = $this->getValidator()) {
$spec['validators'] = array(
$validator,
);
}
return $spec;
}
これをオプションにしないことを理解できません。箱から出してすぐに ZF2 Elements を使用したいのですが、使用する必要があるすべての要素を拡張する必要があります。
ほとんどのフォームにはオプションの要素があるため、これは常に独自の派生クラスを使用する必要があることを意味します。
しかし、それは間違っているように思えるので、誰かが私を説明するのを手伝ってくれることを願っています.