CakePHP多记录标记

时间:2015-08-10 11:46:05

标签: cakephp cakephp-2.0

我对CakePHP很新,但我认为我很了解基础知识。我正在为客户开发一个牲畜管理系统,并遇到了一个路障,我无法弄清楚如何接近。他们希望批量销售流程能够像这样工作:

  • 显示所有可用动物
  • Mark 1-n动物出售
  • 添加一些额外信息(IE:买方,该批次的总重量等)
  • 创建销售记录并更新已售出动物的记录

我所挣扎的是如何使用Cake完成此过程的第二步。我的想法是使用表单帮助器向他们显示一个复选框,但这似乎并没有像我想要的那样工作。我正在创建可用动物的列表并将其传递到视图以在表格中显示,并添加每行的复选框。 以下是我目前在视图中的内容片段:

<div>
<table cellpadding="0" cellspacing="0" border="1" width="50%">
     <?php 
        echo $this->Html->tableHeaders(
            array(
            'Row Number',
            'Ear Tag',
            'Name',
            array('Actions' => array('width' => '20%'))
         ));

    // Table contents.
    $counter = 1;
    $rows=array();
    echo $this->Form->create(null,array('action' => 'sell_cattle'));
    foreach ($animals as $animal) {
        $row=array();
        $row[] = $counter;
        $row[] = $animal['eartag'];
        $row[] = $animal['name'];
        $actions = array();
        'action' => 'edit', $animal['id']));
        $actions[] = $this->Form->checkbox('sell', array(
            'type' => 'checkbox', 
            'value' => $animal['sell'],
            'label' => 'Sell',
            'hiddenField' => false
        ));
        $row[] = array(
            implode(' ', $actions),
            array('class' => 'actions'),
        );
        $rows[]=$row;
        $counter = $counter + 1;
    }
    if (!empty($rows)) {
        echo $this->Html->tableCells($rows);
    }
?>  
</table>
</div>
<div>;
<?php

    echo $this->Form->button(__('Sell Selected Animals'));
    echo $this->Form->end();
?>

</div>

我希望我只是错过了一些简单的事情,或者我可能会以错误的方式处理这个问题,并且有一个更简单的,自动化的&#39;如何实现我想要做的事情。

如果我没有提供足够的信息并提前感谢任何指导,请告诉我。

0 个答案:

没有答案