質問: cakephp2系にて記事と画像の投稿機能を作っています。 内容としては、postとhasmanyの関係にあるimageをpostと同時に保存する際に一度に3枚まで追加できるようにしているのですがバリデーションで最低1枚は一緒に投稿しなければならないようにしたいです。 どのようにしたらよろしいでしょうか? add.ctp echo $this->Form->input('Image.0.attachment',array('type'=>'file','label'=>'Image')); echo $this->Form->input('Image.1.attachment',array('type'=>'file','label'=>'Image')); echo $this->Form->input('Image.2.attachment',array('type'=>'file','label'=>'Image'));
回答: スマートな方法はなさそうです。 POST時のアクション内で画像のポストデータがあるかどうかのヴァリデーションを自前で行うのが現実的な方法かと思います。 Imageの親モデルのbeforeValidateメソッドでチェックするのもよいかもしれません。