【问题标题】:CodeIgniter with Kendoui grid带有 Kendoui 网格的 CodeIgniter
【发布时间】:2013-03-20 23:22:57
【问题描述】:

在发布之前,我在网上搜索了相关问题,但找不到任何与我的问题相关的帮助。

我正在 CodeIgniter 下开发 Web 应用程序。 我在其中使用 KendoUI。 KendoUi 已安装。

问题是我想使用 KendoUi 网格,但该网格遵循 json 格式和其他格式,如 xml。

但问题是,我在 kendoUi 网站上看到的文档,根据他们的说法,我需要另一个数据源文件。其中应包括数据库的回显查询,该查询将用作网格的数据源。

但我想知道,如果 kendoui 网格直接从数据库加载数据而不是在 ohter php 文件上回显数据然后将其放在网格上,是否可以在 codeigniter 中使用。

当且仅当它不可能时,我应该遵循什么方法来实现网格的 codeigniter mvc 模式?我应该用我的目录中的数据名称创建另一个目录吗?或者我该怎么办..

真的需要你的所有指导。

刚接触 KendoUi 和 codeigniter。

【问题讨论】:

    标签: php codeigniter kendo-ui kendo-grid


    【解决方案1】:

    Kendo UI 在客户端运行。您的数据是服务器端的。将数据放入网格的唯一方法是通过服务器端函数传递它。

    在您的情况下,使用 CodeIgniter,这非常简单。您的控制器需要提供包含 Grid 和所需 JavaScript 的页面。数据源的transportread 部分应指向提供数据的URL。

    在您的情况下,该 URL 将指向 CodeIgniter 方法。假设您希望网格显示员工信息,read URL 将指向 employees\gridread(或其他)。

    employees\gridread 方法将调用employees_model 以对员工记录进行语法分析。然后它以 JSON 格式返回员工数据。控制器可能类似于:

        public function gridread()
        {
            $limit = $this->input->post('take',TRUE);
            $offset = $this->input->post('skip',TRUE);
            $sort = $this->input->post('sort',TRUE);
            $filter = $this->input->post('filter',TRUE);
    
            $data = $this->employees_model->GridRead($limit, $offset,$sort,$filter);
    
            if ($data):
                header("Content-type: application/json");
                echo json_encode($data);
            else:
                // send server error
                header("HTTP/1.1 500 Internal Server Error");
                echo "Failed to read data!";
            endif;
        }
    

    您的模型中需要一个函数来处理 $limit, $offset, $sort, $filter 值以返回请求的数据。

    编辑:实际上有一种更简单的方法可以连接 CodeIgniter(或任何 PHP 框架)以使用 Kendo Grids,那就是使用 Kendo 的 DataSourceResult.php,您可以通过查看 Grid 演示并将源代码切换到 PHP 来找到它.

    它处理 Ajax 请求,包括任何过滤、排序和分页,并以 Grid 所需的格式返回数据。

    我对其稍作编辑,以便可以使用 CI 的 $this->load->library 方法加载它,并从配置文件中获取数据库设置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-28
      • 1970-01-01
      • 1970-01-01
      • 2017-10-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多