1

大家好,我在视图上有一个下拉框。我有一个返回模板列表的 find 语句,当我调试 find 时,它会打印出正确的 template.id 和 template.name 列表,但是当我提交表单时,它带有它在列表中的数字如果我在列表中选择第 5 个模板,它会保存 template_id = 5 而不是实际的模板 ID 号。

//Retrieve Account Id of current User       
$accountid=$this->Auth->user('account_id');

//conditions for template arrays
$conditions=
array('AND' => array(
    array('Template.account_id' => $accountid),
    array('Template.active' => 1)
));

//An array of all Templates belonging to the current User's Account
$templates=$this->Template->find('list', array(
    'conditions' => $conditions));

当我调试 $templates 我得到这个打印出来

array(
    (int) 1 => 'Consulting- Bus',
    (int) 2 => 'Consulting- Pers',
    (int) 7 => 'ClientEdge',
    (int) 8 => '11111',
    (int) 9 => 'testSUn',
    (int) 10 => 'Test Bruce Review',
    (int) 11 => 'Test Bruce 3 = Final'

例如,当我选择“Test Bruce Review”并点击提交并调试它打印出“6”的值时,当我希望它在调试时打印出 10 时,下拉框中的第 6 项。

这是与此下拉框相关的表单中的片段

<tr><td><?php echo "Template: "?></td>
<td><?php echo $this->Form->input('template_id', array('label'=>false,'type'=>'select','options'=>$templates));?></td></tr>

我该如何解决这个问题?

4

1 回答 1

0

我在合并数组时遇到问题,导致我的 template.id 死亡

于 2012-09-23T12:23:01.493 回答