zf2、フォームバインドオブジェクトプロシージャに問題があります。簡単に言うと、フォームの検証が完了したら、フォームオブジェクトからエンティティへのデータ交換を自動化しようとしています。2つのインターフェイスInputFilterAwareInterfaceとArraySerializableInterfaceを実装しましたが、以前のインターフェイスはフォームオブジェクトが入力フィルターを取得し、後のインターフェイスがフォームとエンティティからのデータ交換用です。以下は、私のコントローラーに配置されたコードの短いスニペットです。
//Controller code
$companyForm = new \Manage\Forms\CompanyForm();
$companyEntity = $this->getServiceLocator()->get('Manage/CompanyEntity');
$postData = $this->getRequest()->getPost()->toArray();
$companyEntity->exchangeArray($postData);
$companyForm->bind($companyEntity);
if($companyForm->isValid(){
....
}
これにより、エンティティオブジェクトのexchangeArray()メソッドが自動的に呼び出されます。これは正しく行われますが、問題はデータが空であり、データ配列にinputfilterが設定されたキーが含まれており、他のすべてのデータキーが欠落していることです。
必要に応じて、コードスニペットを追加できます。
ありがとうRaj