【发布时间】:2014-08-04 16:54:37
【问题描述】:
我正在尝试在 prestashop 1.6 后台的选项卡中实现一个表单。
我已经成功地使用 Helper 类创建了表单,并且一切正常。但是,我看到的助手类只允许 1 个提交按钮。对于我的需要,我需要使用超过 1 个在控制器的 postProcess() 部分执行不同的操作。对实现这一目标的任何帮助将不胜感激。这是我使用单个提交按钮的渲染表单:
public function renderForm()
{
$fields_form = array(
'form' => array(
'legend' => array(
'title' => $this->l('Contact details'),
'icon' => 'icon-envelope'
),
'input' => array(
array(
'type' => 'text',
'label' => $this->l('Account owner'),
'name' => 'BANK_WIRE_OWNER',
),
array(
'type' => 'textarea',
'label' => $this->l('Details'),
'name' => $this->l('test2'),
'desc' => $this->l('Such as bank branch, IBAN number, BIC, etc.')
),
array(
'type' => 'textarea',
'label' => $this->l('Bank address'),
'name' => 'BANK_WIRE_ADDRESS',
),
),
'submit' => array(
'title' => $this->l('Save'),
)
),
);
$helper = new HelperForm();
$helper->show_toolbar = false;
$helper->table = $this->table;
$lang = new Language((int)Configuration::get('PS_LANG_DEFAULT'));
$helper->default_form_language = 1;
$helper->fields_value['BANK_WIRE_OWNER'] = "";
$helper->fields_value['test2'] = "";
$helper->fields_value['BANK_WIRE_ADDRESS'] = "";
$this->fields_form = array();
$helper->submit_action = 'test';
return $helper->generateForm(array($fields_form));
}
【问题讨论】:
-
我不确定我得到了你想要实现的目标。为什么不创建一个不同的表单,因为它是一个不同的操作?
-
你好。我需要根据按钮单击对表单字段执行不同的操作。我正在控制器中执行一些高级 POST 处理,我的表单需要有 4 个按钮。我与 Prestaforums 的开发人员交谈,他告诉我不可能以编程方式实现我想要的,所以他建议我使用原始代码。它工作得很好,但我想知道是否有更好的方法。还是谢谢。
-
我会回答和这个开发者一样的问题:)
标签: php tabs admin prestashop