【问题标题】:how to load different data tables in different tabs?如何在不同的选项卡中加载不同的数据表?
【发布时间】:2019-06-11 15:20:48
【问题描述】:

我正在使用 laravel 数据表在不同的选项卡上生成不同的数据表。但它只运行呈现到页面的第一个数据表的查询。我已经将范围附加到数据表以针对不同的条件生成不同的结果

我已将 ajax() 方法附加到页面开头未显示的数据表

控制器文件

public function index(UpcomingReservationDataTable $UpcomingReservationDataTable)
    {
        return $UpcomingReservationDataTable->render('admin.reservations.index');
    }

public function getAllReservationTable(ReservationDataTable $ReservationDataTable){
        return $ReservationDataTable->render('admin.reservations.index');
    }

    public function getPastReservationDataTable(PastReservationDataTable $PastReservationDataTable){
        return $PastReservationDataTable->addScope(new PastReservationScope)->render('admin.reservations.index');
    }

pastreservationdatatable查询

public function query(Reservation $model)
    {
        return $model->newQuery()->where('pickup_date','<',date('Y-m-d'))->orderBy('id','desc')->with('customer','package','vehicle');
    }

【问题讨论】:

    标签: laravel yajra-datatable


    【解决方案1】:

    您可以在加载选项卡中显示第一个表,然后通过 ajax 对其进行更改。

    【讨论】:

    • 确实是这样,但是当打开不同的选项卡时,不同的查询不会运行。
    【解决方案2】:

    您必须在 javascript 中编写一个函数。这个函数应该有一个值。此值包含您的查询信息。当在任何选项卡上单击它时,必须使用该值执行此函数。该函数的作用是向服务器发送信息,接收和显示。这些事情你做过吗? 下一个问题是在发送Ajax数据的时候,如果服务器路径错误,就会遇到错误。要在浏览器上查看错误,请按组合键 CTR + Shift + i,然后在窗口顶部的菜单中选择控制台以显示错误。

    【讨论】:

    • 按照文档中的定义编写了 javascript 函数。问题出在 web.php 文件中。当您放置类似于资源路由的路径后,路径会发生冲突并产生不同的结果。所以,最好把路由放在资源路径之前
    猜你喜欢
    • 1970-01-01
    • 2019-05-31
    • 2016-03-22
    • 2020-07-28
    • 2012-07-30
    • 1970-01-01
    • 2021-04-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多