私は画像が多いユニットを持っており、編集ページにこれらの画像の編集フォームを表示しようとしています。結果のhtmlフォームの入力は間違ったモデルを示しているため、このデータの正しい値には値が設定されません。ここに私のビューのコードは次のとおりです。hasMany(複数行)でフォームを編集する方法
<?php
echo $this->Form->create('Unit', array(
'action' => 'edit',
'inputDefaults' => array(
'label' => false,
'div' => false
)
)
);
echo $this->Form->hidden('id');
foreach($this->data['Image'] as $img) {
echo $this->Form->hidden('Image'.$img['id'].'id');
}
echo $this->Form->end('Update Photo');?>
<?php echo $this->Session->flash(); ?>
私のHTMLは次のように終わる:。私はあなたが」MODELNAMEを入力する方法を示し、CakePHPのマニュアルを含むチュートリアルの数を、見てきました
<form action="/units/edit/3" id="UnitEditForm" method="post" accept-charset="utf-8">
<div style="display:none;">
<input type="hidden" name="_method" value="POST"/>
</div>
<input type="hidden" name="data[Unit][id]" value="3" id="UnitId"/>
<input type="hidden" name="data[Unit][Image1id]" id="UnitImage1id"/>
<input type="hidden" name="data[Unit][Image2id]" id="UnitImage2id"/>
<input type="hidden" name="data[Unit][Image3id]" id="UnitImage3id"/>
<input type="hidden" name="data[Unit][Image4id]" id="UnitImage4id"/>
<input type="hidden" name="data[Unit][Image5id]" id="UnitImage5id"/>
<input type="hidden" name="data[Unit][Image6id]" id="UnitImage6id"/>
<div class="submit">
<input type="submit" value="Update Photo"/>
</div>
</form>
[0 ] .field 'など、あなたが持っている行の数が分かっていれば、すべて上質でいいですが、いつCMSでそれが起こりますか?私は利用可能なイメージの配列のすべてのレコードをループすることによってこのフォームを構築する方法に関する情報を見つけることができないようです。 最終的には、レコードを更新したり、実際のイメージを表示したり、変更することができるように、隠しidフィールドを持つことができるようにしたいと考えています。このフォームに関連付けるunit_idの非表示フィールドです。
UPDATE 今
echo $this->Form->hidden('Image.'.$img['id'].'.id');
作品を使用しますが、この戻っている:
<input type="hidden" name="data[Image][1][id]" value="2" id="Image1Id"/>
<input type="hidden" name="data[Image][2][id]" value="3" id="Image2Id"/>
<input type="hidden" name="data[Image][3][id]" value="4" id="Image3Id"/>
<input type="hidden" name="data[Image][4][id]" value="5" id="Image4Id"/>
<input type="hidden" name="data[Image][5][id]" value="6" id="Image5Id"/>
<input type="hidden" name="data[Image][6][id]" id="Image6Id"/>
を私は[1]、[0]から起動する必要はありません。 'id'で数値を取得する代わりに、$ img配列でカウントされた数値を取得する必要があります。これはどうすればいいですか?
ねえ、私は同じ考え方(カウント)と入力が正しい値とすべてを持っていた。しかし、私はデータを保存することはできません。コントローラの一部を表示できますか?私は記事を取得し、patchEntityに関連付けられているものを使用しています。 – Isengo