cakephp选择带递归的方框2

时间:2011-04-15 18:22:29

标签: php cakephp-1.3 drop-down-menu

我有Tarifs,每个tarif hasMany PricePrice belongsTo UserGroup。因此,当用户的组被更改时,价格基本上会发生变化 - 这并不重要。

视图如下所示

<?php echo $this->Form->create('Tarif');?>
    ...
        $i=0;
        foreach ($this->data['Price'] as $price) {

            echo "<tr><td>".$this->Form->input("Price.$i.price", array('label' => false))."</td>";
            echo "<td>".$this->Form->input("Price.$i.currency", array('label' => false))."</td>";
            echo "<td>".$this->Form->input("Price.$i.UserGroup.id", array('label' => false))."</td>";
    ...     

我需要UserGroup.id输入显示为选择,其中每个选项显示组名称并以id作为值。 user_group_id值很好,但是在文本输入中显示。我尝试了$this->Form->select$this->Form->input(...,'type'=>'select'),但他们都提供了没有选项的选择框。 如何设置输入以执行我想要的操作? 感谢

1 个答案:

答案 0 :(得分:1)

在您的控制器中,您需要添加:

$user_groups = $this->UserGroup->find('list');
$this->set(compact('user_groups');

然后在视图中,您将下拉菜单设置为:

<?php echo $this->Form->input('user_group', array('options' => $user_groups)); ?>

然后,您可以将$ user_groups添加为任何Form-&gt;输入的选项,并在使用时成为下拉列表:

array('options' => $user_groups)