草庐IT

jquery - Ignited-Datatables,应该怎么做?

coder 2023-10-26 原文

老实说,我对代码的处理方式一无所知,我一直在做这些事情,一直在阅读这个那个,但没有结果。我仍然是编程的新手。主要问题是 Ignited-Datatable 2.0 beta 和 Datatables 1.10.12 我使用的是 MVC 模式,我在这上面看到了 CV 模式。

这是我尝试以 Ignited 风格进行的 MySQL 查询:

$sql =
        "SELECT GROUP_CONCAT(a.servicio) AS Num_Servicio_Campus,
        GROUP_CONCAT(DISTINCT (b.account)) AS Total_Cuentas,
        GROUP_CONCAT(DISTINCT(YEAR(a.periodo_fin))) AS YearFin,
        CONCAT('', FORMAT(SUM(a.consumo), 0)) AS SumatoriaConsumoEnergia,
        CONCAT('$', FORMAT(SUM(a.costo), 2)) AS SumatoriaCostoEnergia, c.campus AS Campus
        FROM `sdspanel1`.`pdc_consumo_energia` a
        INNER JOIN `sdspanel1`.`ctrl_servicios` b ON(a.servicio = b.id)
        INNER JOIN `sdspanel1`.`pdc_servicios_energia` c ON(c.cuenta = b.account)
        WHERE c.campus IS NOT NULL AND c.campus <> ''
        AND a.periodo_fin IS NOT NULL AND a.periodo_fin <> ''
        AND (YEAR(a.periodo_fin) <'1-12-31' OR YEAR(a.periodo_fin)> '2010-12-31')
        AND (YEAR(a.periodo_fin) <'2100-12-31' OR YEAR(a.periodo_fin)> '2100-12-31')";

        $sql .= " GROUP BY YEAR(a.periodo_fin), c.campus
            ORDER BY YEAR(a.periodo_fin) ASC, a.servicio ASC";

        $query = $this->db->query($sql);

        if($query->num_rows() > 0)
        {
            return $query->result_array();

        }
        else
        {
            return FALSE;
        }

Query Results

它可以工作,但需要以数据表的方式进行排序。并尝试这样的事情 Stack Example , 但没有结果。

所以...这是我的 Ignited Datatables“尝试”模型

function lista_campus()
{
    $this->load->library('datatables');
    $this->datatables->FROM('pdc_consumo_energia');
    $this->datatables->SELECT("pdc_servicios_energia.campus AS Campus,
    GROUP_CONCAT(pdc_consumo_energia.servicio) AS Num_Servicio_Campus,
    GROUP_CONCAT(DISTINCT(YEAR(pdc_consumo_energia.periodo_fin))) AS YearFin,
    CONCAT('', FORMAT(SUM(pdc_consumo_energia.consumo), 0)) AS SumatoriaConsumoEnergia,
    CONCAT('$', FORMAT(SUM(pdc_consumo_energia.costo), 2)) AS SumatoriaCostoEnergia,
    GROUP_CONCAT(DISTINCT(ctrl_servicios.account)) AS Total_Cuentas", FALSE);
    $this->datatables->JOIN('ctrl_servicios', 'pdc_consumo_energia.servicio = ctrl_servicios.id', 'INNER');
    $this->datatables->JOIN('pdc_servicios_energia', 'pdc_servicios_energia.cuenta = ctrl_servicios.account', 'INNER');
    $this->datatables->WHERE('pdc_servicios_energia.campus IS NOT NULL AND pdc_consumo_energia.periodo_fin IS NOT NULL');
    $this->datatables->GROUP_BY('pdc_consumo_energia.periodo_fin', 'pdc_servicios_energia.campus');
    return $this->datatables->generate('json', '');



}

Controller :

function campus_buscar3()
{
    // /* Configuración de la paginación */

    $this->modelo_consumo_energia->lista_campus();
    $data['title'] = '<i class="icon-fire"></i> TEST';
    $data['subtitle'] = 'Test Vista Campus';
    $data['body'] = 'busqueda_electricidad_campus_c';
    $this->load->view('main', $data);


}

如果我尝试使用“示例”方式,它无法显示任何内容...

“最后……View/JScript:

<script type="text/javascript" charset="utf-8">
            $(document).ready(function() {
            //$(function() {
            $('#Campusini').dataTable( {


                //"order": [[ 1, "asc" ]],

                /*"aoColumnDefs": [
                    { 'bSortable': false, 'aTargets': [ 3 ]},
                    { 'bSearchable': true }
                ],*/
                "Processing": true,
                "ServerSide": true,
                "sAjaxSource": '<?php echo site_url(); ?>consumo_electricidad/campus_buscar3',
                "bJQueryUI": true,
                "sPaginationType": "full_numbers",
                "iDisplayStart ":20,
                "oLanguage": {
                "sProcessing": ""
                },

                "aoColumns": [
                        { "bSearchable": true, "bSortable": true,  "mData": "YearFin" },
                        { "bSearchable": true, "bSortable": true,  "mData": "SumatoriaConsumoEnergia" },
                        { "bSearchable": true, "bSortable": true,  "mData": "SumatoriaCostoEnergia" },
                        { "bSearchable": true, "bSortable": true,  "mData": "Campus" }
                ],

                'fnServerData': function(sSource, aoData, fnCallback)

                {
                    $.ajax
                    ({
                        'dataType': 'json',
                        'type'    : 'POST',
                        'url'     : sSource,
                        'data'    : aoData,
                        'success' : fnCallback
                    });
                }
            } );
        });
</script>




    <table id= "Campusini" class = "table table-bordered datatable table-striped">
        <thead>
          <tr>

            <th> Año </th>
            <th> Consumo Total </th>
            <th> Costo Total </th>
            <th> Campus </th>
          </tr>
        </thead>
        </table>

With no results at all... . 因此,对这个烂摊子的任何帮助都会受到欢迎。提前致谢。

最佳答案

很难回答所有...但我看到了可能的错误:

在 Controller 中调用函数

$this->modelo_consumo_energia->lista_campus();

但没有分配任何变量...所以没有结果。

我建议去调试简单的东西,看看代码在哪一部分不起作用,因为我想你只是写了所有这些东西,然后就不可能知道发生了什么。

你正在使用 MVC,接受吧!看起来 Model 可以工作,现在尝试验证 Controller 和 View 是否也可以工作,编写简单的代码,例如 echo something...

关于jquery - Ignited-Datatables,应该怎么做?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38623526/

有关jquery - Ignited-Datatables,应该怎么做?的更多相关文章

  1. ruby - 检查 "command"的输出应该包含 NilClass 的意外崩溃 - 2

    为了将Cucumber用于命令行脚本,我按照提供的说明安装了arubagem。它在我的Gemfile中,我可以验证是否安装了正确的版本并且我已经包含了require'aruba/cucumber'在'features/env.rb'中为了确保它能正常工作,我写了以下场景:@announceScenario:Testingcucumber/arubaGivenablankslateThentheoutputfrom"ls-la"shouldcontain"drw"假设事情应该失败。它确实失败了,但失败的原因是错误的:@announceScenario:Testingcucumber/ar

  2. ruby - Ruby 中的隐式返回值是怎么回事? - 2

    所以我开始关注ruby​​,很多东西看起来不错,但我对隐式return语句很反感。我理解默认情况下让所有内容返回self或nil但不是语句的最后一个值。对我来说,它看起来非常脆弱(尤其是)如果你正在使用一个不打算返回某些东西的方法(尤其是一个改变状态/破坏性方法的函数!),其他人可能最终依赖于一个返回对方法的目的并不重要,并且有很大的改变机会。隐式返回有什么意义?有没有办法让事情变得更简单?总是有返回以防止隐含返回被认为是好的做法吗?我是不是太担心这个了?附言当人们想要从方法中返回特定的东西时,他们是否经常使用隐式返回,这不是让你组中的其他人更容易破坏彼此的代码吗?当然,记录一切并给出

  3. jquery - 我的 jquery AJAX POST 请求无需发送 Authenticity Token (Rails) - 2

    rails中是否有任何规定允许站点的所有AJAXPOST请求在没有authenticity_token的情况下通过?我有一个调用Controller方法的JqueryPOSTajax调用,但我没有在其中放置任何真实性代码,但调用成功。我的ApplicationController确实有'request_forgery_protection'并且我已经改变了config.action_controller.consider_all_requests_local在我的environments/development.rb中为false我还搜索了我的代码以确保我没有重载ajaxSend来发送

  4. ruby - 怎么来的(a_method || :other) returns :other only when assigning to a var called a_method? - 2

    给定以下方法:defsome_method:valueend以下语句按我的预期工作:some_method||:other#=>:valuex=some_method||:other#=>:value但是下面语句的行为让我感到困惑:some_method=some_method||:other#=>:other它按预期创建了一个名为some_method的局部变量,随后对some_method的调用返回该局部变量的值。但为什么它分配:other而不是:value呢?我知道这可能不是一件明智的事情,并且可以看出它可能有多么模棱两可,但我认为应该在考虑作业之前评估作业的右侧...我已经在R

  5. ruby-on-rails - 我该怎么办 :remote location validation with CarrierWave? - 2

    我在我的Rails3示例应用程序上使用CarrierWave。我想验证远程位置上传,因此当用户提交无效URL(空白或非图像)时,我不会收到标准错误异常:CarrierWave::DownloadErrorinImageController#createtryingtodownloadafilewhichisnotservedoverHTTP这是我的模型:classPaintingtrue,:length=>{:minimum=>5,:maximum=>100}validates:image,:presence=>trueend这是我的Controller:classPaintingsC

  6. java - 我的模型类或其他类中应该有逻辑吗 - 2

    我只想对我一直在思考的这个问题有其他意见,例如我有classuser_controller和classuserclassUserattr_accessor:name,:usernameendclassUserController//dosomethingaboutanythingaboutusersend问题是我的User类中是否应该有逻辑user=User.newuser.do_something(user1)oritshouldbeuser_controller=UserController.newuser_controller.do_something(user1,user2)我

  7. 电脑0x0000001A蓝屏错误怎么U盘重装系统教学 - 2

      电脑0x0000001A蓝屏错误怎么U盘重装系统教学分享。有用户电脑开机之后遇到了系统蓝屏的情况。系统蓝屏问题很多时候都是系统bug,只有通过重装系统来进行解决。那么蓝屏问题如何通过U盘重装新系统来解决呢?来看看以下的详细操作方法教学吧。  准备工作:  1、U盘一个(尽量使用8G以上的U盘)。  2、一台正常联网可使用的电脑。  3、ghost或ISO系统镜像文件(Win10系统下载_Win10专业版_windows10正式版下载-系统之家)。  4、在本页面下载U盘启动盘制作工具:系统之家U盘启动工具。  U盘启动盘制作步骤:  注意:制作期间,U盘会被格式化,因此U盘中的重要文件请注

  8. ruby-on-rails - 带有 Zeus 的 RSpec 3.1,我应该在 spec_helper 中要求 'rspec/rails' 吗? - 2

    使用rspec-rails3.0+,测试设置分为spec_helper和rails_helper我注意到生成的spec_helper不需要'rspec/rails'。这会导致zeus崩溃:spec_helper.rb:5:in`':undefinedmethod`configure'forRSpec:Module(NoMethodError)对thisissue最常见的回应是需要'rspec/rails'。但这是否会破坏仅使用spec_helper拆分rails规范和PORO规范的全部目的?或者这无关紧要,因为Zeus无论如何都会预加载Rails?我应该在我的spec_helper中做

  9. jquery - 如何将 AJAX 变量从 jQuery 传递到他们的 Controller ? - 2

    我有一个电子邮件表格。但是我正在制作一个测试电子邮件表单,用户可以在其中添加一个唯一的电子邮件,并让电子邮件测试将其发送到该特定电子邮件。为了简单起见,我决定让测试电子邮件通过ajax执行,并将整个内容粘贴到另一个电子邮件表单中。我不知道如何将变量从我的HAML发送到我的Controllernew.html.haml-form_tagadmin_email_blast_pathdoSubject%br=text_field_tag'subject',:class=>"mass_email_subject"%brBody%br=text_area_tag'message','',:nam

  10. ruby - EventMachine - 你怎么知道你是否落后了? - 2

    我正在研究使用EventMachine支持的twitter-streamruby​​gem来跟踪和捕获推文。我对整个事件编程有点陌生。我如何判断我在事件循环中所做的任何处理是否导致我落后?有没有简单的检查方法? 最佳答案 您可以通过使用周期性计时器并打印出耗时来确定延迟。如果您使用的是1秒的计时器,您应该已经过了大约1秒,如果它更长,您就知道您正在减慢react器的速度。@last=Time.now.to_fEM.add_periodic_timer(1)doputs"LATENCY:#{Time.now.to_f-@last}"@

随机推荐