我正在尝试使用cakePHP开发一个表单。
return false
它创建一个选择元素
<div class="links form large-9 medium-8 columns content">
<?= $this->Form->create($link) ?>
<fieldset>
<legend><?= __('Add Link') ?></legend>
<?php
echo $this->Form->control('section_id', ['options' => $sections]);
echo $this->Form->control('link');
//how do I make this display a text value
echo $this->Form->control('image_id', ['options' => $images]);
echo $this->Form->control('active');
echo $this->Form->control('created_on');
?>
</fieldset>
<?= $this->Form->button(__('Submit')) ?>
<?= $this->Form->end() ?>
</div>
我希望它显示的是
<select name="image_id" id="image-id">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
请注意,数据存储在数据库表'images'中,id字段为'id',所需文本位于'file'
如何使用所需的文本值而不是选项文本值的id值从数据库创建select元素?
答案 0 :(得分:0)
使用数据库中的数据创建选择字段:
在你的ImagesTable中:
确保正确设置了显示字段:
$this->displayField('file');
在您的控制器中:
$images = $this->Images->find("list");
$this->set(compact("images"));
在模板文件中:
$this->Form->control("image_id", ["type" => "select"]);
更多信息:Form Helper