【问题标题】:How to filter a record depending of the user connected using Laravel?如何根据使用 Laravel 连接的用户过滤记录?
【发布时间】:2020-06-22 09:53:04
【问题描述】:

我有下一张桌子..

IDOP 列是我在我的应用程序中用于连接而不是电子邮件的键...我希望能够过滤每个用户的 IDOP...所以用户应该只能看到行与 对应的IDOP,如何只过滤他的IDOP?

这是我的数据表的功能

$('#user_contactabilidadasesor').DataTable({
processing: true,
"scrollX": true,
//serverSide: true,
ajax: {
url: "{{ route('contactabilidadasesor.index') }}",
},
columns: [
{
data: 'idop',
name: 'l.idop',
className: 'uniqueClassName'
},
{
data: 'idop_asesor',
name: 'idop_asesor',
searchable: false, render: function ( data, type, row ) {
              if (data == null){ return ''; }else{return (row['idop_asesor'] + ' ' + row['ape_asesor'])};
            },
className: 'uniqueClassName'
}
],
});

这是我的查询

public function index(Request $request)
{


    if($request->ajax())
    {
        $data = DB::table('tbl_lista_contactabilidad as a')
    ->select('a.id','a.postventaatcs_id')
    ->leftjoin('tbl_equipo_postventaatcs as h','h.id','=','a.postventaatc_id')
    ->leftjoin('users as l','l.id','=','h.asesor_id')
    ->select(array('a.id','l.name as idop_asesor','l.apellido as ape_asesor','l.idop'));

        return DataTables::of($data)
                ->addColumn('action', function($data){
                    $button = '<button type="button" name="edit" id="'.$data->id.'" class="edit btn btn-primary btn-sm">Auditar</button>';
                    //$button .= '&nbsp;&nbsp;&nbsp;<button type="button" name="edit" id="'.$data->id.'" class="delete btn btn-danger btn-sm">Delete</button>';
                    return $button;
                })
                ->rawColumns(['action'])
                ->make(true);

    }

    return view('contactabilidadasesor');
}

【问题讨论】:

  • 添加到您的查询-&gt;where('IDOP', auth()-&gt;user()-&gt;IDOP)
  • 它只显示没有 IDOP 的记录
  • auth()->user()->IDOP
  • 我将每个 IDOP 保存在表 users 中,但我只想查看每个已连接用户的 IDOP 的行
  • 我做到了......非常感谢你的帮助......它就像你说的那样工作......如果你想发布答案......我会给你打分

标签: laravel laravel-5 laravel-6 laravel-query-builder


【解决方案1】:

对于过滤,您必须使用 ->where('IDOP', auth()->user()->IDOP) (对于单个用户) ->whereIn('IDOP', [过滤 idops 数组])用于多个 IDOP

【讨论】:

    猜你喜欢
    • 2021-03-24
    • 2021-10-15
    • 2018-04-13
    • 1970-01-01
    • 2020-03-17
    • 2020-04-15
    • 2019-12-15
    • 2021-05-31
    • 2017-09-13
    相关资源
    最近更新 更多