Module Opencart模块如何保存其设置?
嘿,伙计们,我为OpenCart v1.5.6.4开发的模块有点问题。这是我在管理部分的模块设置 正如您所看到的,我内置了额外的选项卡,我想让用户能够指定额外的选项,这些选项将用于在目录端构建处方表单 问题是,当用户单击Module Opencart模块如何保存其设置?,module,controller,opencart,Module,Controller,Opencart,嘿,伙计们,我为OpenCart v1.5.6.4开发的模块有点问题。这是我在管理部分的模块设置 正如您所看到的,我内置了额外的选项卡,我想让用户能够指定额外的选项,这些选项将用于在目录端构建处方表单 问题是,当用户单击Save按钮时,如何将每个附加选项卡中的附加数据保存到自定义表中 单击Save按钮时是否会调用一个特殊的函数,我可以自己实现它?呃,我想昨晚我有点累了,因为我意识到index()中定义的这段代码负责将模块设置保存到数据库: if (($this->request->
Save
按钮时,如何将每个附加选项卡中的附加数据保存到自定义表中
单击
Save
按钮时是否会调用一个特殊的函数,我可以自己实现它?呃,我想昨晚我有点累了,因为我意识到index()
中定义的这段代码负责将模块设置保存到数据库:
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
//save module settings
$this->model_setting_setting->editSetting('prescripts', $this->request->post);
//mark of success
$this->session->data['success'] = $this->language->get('text_success');
//redirect back to module page
$this->redirect($this->url->link('extension/module', 'token=' . $this->session->data['token'], 'SSL'));
}
因此,我所需要做的就是在这里填充我的自定义代码,然后我就可以使用Admin controller了。我将看看核心存储页面和其他管理页面是如何处理的。似乎“保存”按钮保存了所有选项卡的所有数据。它只是一个向控制器发布数据的表单。如何处理这些数据取决于您自己,您可以按照自己的喜好将其分开。对于您所拥有的,您最好查看类似信息页面ControllersRM的内容,就在这里发布之前,我已经查看了
管理中的几乎每个控制器大多数只实现索引()
和验证()
。在OpenCart中,模块被设置为发回控制器,但我没有看到处理此发回请求的特定函数。而且它似乎只处理带有特定签名的数据标记模块名称[模块行][字段名称]
。但我添加的额外选项卡不遵循此格式,因为我不希望它们保存到oc\u settings
表中。我真正想要的只是默认情况下处理OpenCart模块中保存部分的函数名。我已经为它实现了代码@JayGilford,但您的建议让我想到了修改表单操作属性以发布到特定的函数名。这也许能解决我的问题。