0

「Requestc」コントローラーに、選択した複数選択スクリプトからのデータを含む配列を保存しようとしています。

私の見解:

<select data-placeholder="Selecione as certidões" name="certidoes[Requestc][][caminho]" multiple="multiple"  style="width:400px;" class="chzn-select">
    <?php foreach ($certidao as $certidoes): ?>
    <option value="<?php echo $certidoes['Certificate']['id']; ?>"><?php echo $certidoes['Certificate']['nome']; ?></option>
    <?php endforeach ?>
</select>

私のコントローラー:

if(!empty($solicitacao)) {
        $this->request->data['Requestc']['request_id'] = $this->Request->id;
        $data = $this->request->data['certidoes'];
        $this->Request->Requestc->saveAll($data['Requestc']);
    }

「request_id」を保存すると、まだ空白のままです。

ここに画像の説明を入力

4

2 に答える 2

1

答えではありませんが、FormHelper を使用してこの入力を作成する方法を説明するためです。

// Aparently, this variable is not formatted correctly to be used
// directly for options. If possible, use Model::find('list')
// to get it in the right format
$options = array();

foreach ($certidao as $row) {
    $options[$row['Certificate']['id']] = $row['Certificate']['nome'];
}


echo $this->Form->input('Requestc.caminho', array(
    'type' => 'select',
    'multiple' => 'multiple',
    'data-placeholder' => 'Something here',
    'style' => 'width:400px',
    'class' => 'chzn-select',
    'options' => $options,
 );

テストするために自分のコンピューターの後ろにいるわけではありませんが、問題ないと思います

于 2013-04-09T21:49:45.450 に答える
0

データを変更するには、別の構文を使用する必要があると思います。料理本をチェック

// Modify some request data, so you can prepopulate some form fields.
$this->request->data('Post.title', 'New post')
    ->data('Comment.1.author', 'Mark');
于 2013-04-09T21:08:33.413 に答える