1

投稿する前に、関連する問題についてWebで検索しましたが、問題に関連するヘルプが見つかりませんでした。

私はCodeIgniterの下でWebアプリケーションに取り組んでいます。KendoUIを使用しています。KendoUiがインストールされています。

問題は、KendoUiグリッドを使用したいのですが、そのグリッドはjson形式やxmlなどの他の形式に従います。

しかし、問題は、私がkendoUi WebサイトでWeb上で見たドキュメントであり、それらによると、別のデータソースファイルが必要になります。これには、グリッドのデータソースとして使用されるデータベースのエコークエリが含まれている必要があります。

しかし、私はcodeigniterで、kendouiグリッドが他のphpファイルにデータをエコーし​​てグリッドに配置する代わりに、データベースからデータを直接ロードすることが可能かどうかを知りたいです。

それが不可能な場合に限り、グリッドを実装するためのcodeigniter mvcパターンに対してどのようなアプローチに従う必要がありますか?ディレクトリ内のデータの名前で別のディレクトリを作成する必要がありますか?または私は何をすべきか..

本当にあなたのすべてのガイダンスが必要です。

KendoUiとcodeigniterは初めてです。

4

1 に答える 1

5

Kendo UI はクライアント側で動作します。あなたのデータはサーバー側です。データをグリッドに入れる唯一の方法は、サーバー側関数を介してデータを渡すことです。

あなたの場合、CodeIgniter を使用すると、これは非常に簡単です。コントローラーは、グリッドと必要な JavaScript を含むページを提供する必要があります。readデータソースのセクションは、データをtransport提供する 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 Grid を操作するはるかに簡単な方法がDataSourceResult.phpあります。それは、Grid デモを表示してソースを PHP に切り替えることで見つけることができる Kendo を使用することです。

フィルタリング、ソート、ページングなどの Ajax リクエストを処理し、グリッドが必要とする形式でデータを返します。

CIの方法を使用してロードできるように少し編集し$this->load->library、構成ファイルからデータベース設定を取得します。

于 2013-04-25T11:31:02.117 に答える