0

我为使用 CodeIgniter 构建的自定义 CMS 创建了自定义配置文件。我想在 CMS 中有一个“配置”页面,允许用户保存联系人电子邮件地址和其他变量。

我想允许用户从管理员 CP 即时设置这些配置变量,但我在这样做时遇到了麻烦。

我在这里找到了这篇文章:动态更新配置数据代码点火器,它提出了一个类似的问题,但答案并不完全是我想要的。

是否可以从控制器动态更新配置文件?现在我的代码如下所示:

     $this->config->load('cms_config');

    //load the initial view
    $this->data['subview'] = 'admin/setup/index';
    $this->load->view('admin/_layout_main', $this->data);

    //validate form
    if($this->form_validation->run('site_config') == TRUE) {

        $this->config->set_item('contact_email', $this->input->post('contact_email'));

    }

但这似乎根本没有更新文件。事实上,表单提交时似乎没有发生任何事情。

4

1 回答 1

1

这是我在使用自己的 CMS 时遇到的设计限制之一。配置在框架文件中。然后,我虽然使用第二个数据库(例如 SQLite)来引导额外的配置数据,但随后面临 CI 的第二个限制,因为它一次不支持多个数据库。剩下的唯一选择是在不同的上下文中硬编辑配置文件本身,自定义文件或 codeigniter 挂钩可以完成这项工作。或安装控制器(在 pyro CMS 中实现)

如果您想讨论更多 cms 设计问题,请告诉我,因为我正在处理类似的事情。

祝你好运。

于 2013-06-11T16:46:19.223 回答