【问题标题】:Can't get user_id value Laravel Query无法获取 user_id 值 Laravel 查询
【发布时间】:2021-05-15 11:55:04
【问题描述】:

我无法使用数据表在我的视图页面中调用 user_id,当我将 select('name') 更改为 select('user_id') 或 select('*') 时,它也会显示错误 DataTables warning: table id=DataTables_Table_0 - Ajax error. For more information about this error, please see http://datatables.net/tn/7 有什么问题我的代码?提前致谢

我有一个包含以下代码的控制器

public function TeamTask(Request $request)
    {
      
        if ($request->ajax()) {
            $data = DB::table('posts')->select('name')->selectraw('count(user_id) as total')->selectRaw('SUM(status = "Done") as done')->where('div',  Auth::user()->div)->groupBy('name')->get();
            return Datatables::of($data)
                ->addColumn('action', function ($row) {

                    $btn = ' <a href="javascript:void(0)" data-toggle="tooltip"  data-id="' . $row->name . '" data-original-title="Detail" class="btn btn-success mr-1 btn-sm detailProduct"><span class="fas fa-info"></span></a>';

                    return $btn;
                })
                ->rawColumns(['action'])
                ->addIndexColumn()
                ->make(true);
        }

        return view('task.teamTask',);
    }

我的看法

<script type="text/javascript">
    $(function() {

        $.ajaxSetup({
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            }
        });

        var table = $('.data-table').DataTable({
            processing: true,
            serverSide: true,
            ajax: "{{ route('team.task') }}",

            columns: [{
                    data: 'DT_RowIndex',
                    name: 'DT_RowIndex',
                    orderable: false,
                    searchable: false,
                },
                {
                    data: 'name',
                    name: 'name',
                    orderable: false,
                },
                {
                    data: 'user_id',
                    name: 'user_id',
                    orderable: false,
                },
                {
                    data: 'total',
                    name: 'total',
                    orderable: false,
                },
                {
                    data: 'done',
                    name: 'done'
                },
                {
                    data: 'action',
                    name: 'action'
                },

            ]
        });

    });
</script>

我无法使用数据表在我的视图页面中调用 user_id,当我将 select('name') 更改为 select('user_id') 或 select('*') 时,它也会显示错误 DataTables warning: table id=DataTables_Table_0 - Ajax error. For more information about this error, please see http://datatables.net/tn/7 Whats wrong with我的代码?提前致谢

【问题讨论】:

    标签: laravel datatable laravel-8 laravel-query-builder


    【解决方案1】:

    在您的查询中添加-&gt;groupBy('user_id'),这应该可以解决您的问题

    【讨论】:

      【解决方案2】:

      试试这个。

      public function TeamTask(Request $request)
          {
            
              if ($request->ajax()) {
                  $data = DB::table('posts')->select('name','user_id')->selectraw('count(user_id) as total')->selectRaw('SUM(status = "Done") as done')->where('div',  Auth::user()->div)->groupBy('name')->get();
                  return Datatables::of($data)
                      ->addColumn('action', function ($row) {
      
                          $btn = ' <a href="javascript:void(0)" data-toggle="tooltip"  data-id="' . $row->name . '" data-original-title="Detail" class="btn btn-success mr-1 btn-sm detailProduct"><span class="fas fa-info"></span></a>';
      
                          return $btn;
                      })
                      ->rawColumns(['action'])
                      ->addIndexColumn()
                      ->make(true);
              }
      
              return view('task.teamTask',);
          }
      

      【讨论】:

      • 完成,我在我的帖子中添加了它
      • 查看错误,其实是服务器响应错误,可能是控制器代码导致的,需要使用浏览器的开发者工具调试,首先找到确切的错误并纠正。跨度>
      猜你喜欢
      • 1970-01-01
      • 2016-03-09
      • 2023-04-04
      • 2017-11-30
      • 1970-01-01
      • 1970-01-01
      • 2018-08-24
      • 2012-07-07
      • 2021-10-03
      相关资源
      最近更新 更多