我是symfony框架的新手。我在一个已经存在的项目上工作过,所以我想改变使用Symfony 1.2将选择框放入文本框中。
更多的信息和代码片段会有所帮助,但是..
有几个地方可以实现这一点,我将选择两个最直接,希望最常见的地方。
1)您的表单已经过自定义,可能会plugins/yourPlugin/lib/form/yourForm.class.php
这里会有类似$this->setWidget('my_input', new sfWidgetChoice(array([...])));
它可能有许多"选择"小部件(如果它们来自数据库,则为学说或推进)
您需要将其更改为$this->setWidget('my_input', new sfWidgetFormInput());
2)您的表单之前未被修改过,并且是生成的表单
您需要进入您的actions.class.php
(或components.class.php
)并找到它说$this->form = new yourForm();
在plugins/yourPlugin/lib/form
中创建一个新表单,并使其扩展您以前的表单。
class yourNewForm extends yourForm
然后添加
public function setup()
{
$this->setWidget('my_input', new sfWidgetFormInput());
}
您可能还必须更新验证器,否则它将需要"selct box"格式的数据。
http://www.symfony-project.org/api/1_1/sfWidgetFormInput