cakephp从DB获取所有下拉选项

时间:2013-03-08 16:56:08

标签: php cakephp

我在单独的表中有一个下拉和下拉选项。这很好但现在我希望能够使用下拉代码检索所有选项。在这个页面上我有所有的下拉菜单和项目。假设下拉代码为dropdown1

我希望能够做到

$this->Form->input('dropdownitem_id', array('options' => $dropdown['dropdown1']));

如果没有助手,有没有办法做到这一点?

4 个答案:

答案 0 :(得分:2)

1)你为什么要“没有帮助”呢?

2)是的,使用正常的PHP内容 - 即foreach()循环,将HTML内容回显到页面

只需查看帮助程序生成的内容,并使用PHP来模仿它。

<select name="whatever">
    <?php
    foreach($items as $item) {
        echo '<option value=" . $item['id'] . '">' . $item['name'] . '</option>';
    }
    ?>
</select>

(类似的东西 - 我很快就把它写成了我的头脑,但是你应该明白这一点)

答案 1 :(得分:2)

在控制器中,

$dropdownitems = $this->OtherModel->find('list');
$this->set(compact('dropdownitems'));

在你看来

$this->Form->input('dropdownitem_id');

将自动填充选项选项。

但我不明白,你的帮助是什么意思?

答案 2 :(得分:0)

您应该使用可包含的行为。

http://book.cakephp.org/2.0/en/core-libraries/behaviors/containable.html

然后你会查询顶级元素。

完成后。

你必须按照Dave说的那样运行一个foreach循环并格式化选项。

如果您需要帮助,请告诉我们,他们是一个救生员和您的朋友!

答案 3 :(得分:0)

我创建了一个自定义助手来获取我想要的确切行为。