我很确定我在Cake 1.3中没有这个问题,但是:
我有一个基于is_live db字段的表单输入(包含1或0作为其值)。
以下内容创建了一个正确填充的复选框:
echo $this->Form->input('is_live', array('label'=>'Status'));
但是,以下似乎并未创建正确填充的下拉列表(始终选择第一个选项,即使选择项目并提交表单确实正确更新):
echo $this->Form->input('is_live', array(
'label'=>'Status', 'type'=>'select' , 'options'=>array(1=>'Live', 0=>'Pending')
));
有什么简单的方法可以根据CakePHP 2.0中is_live的值填充下拉列表吗?或者有解决方法吗?
答案 0 :(得分:0)
我之前使用1和0时遇到了同样的问题。
我的解决方案是使用以下
$options = array(1=> 'Live', 0=>'Pending');
echo $this->Form->input('YourModel.is_live',
array(
'options' => $options,
'label' => 'Status',
'selected' => intval($defaultValue), // make sure you set a default value
)
);
答案 1 :(得分:-1)
您可以更改该字段的内容长度吗?如果可以,请将其更改为2.这样可以解决问题。
ALTER TABLE `your_table` CHANGE `is_live` `is_live` TINYINT(2) NULL DEFAULT NULL;