【问题标题】:Yajra Ajax Datatables Including Dynamic URL with parameterYajra Ajax 数据表包括带参数的动态 URL
【发布时间】:2020-08-30 18:28:30
【问题描述】:

我将 Yarja 数据表用于相当复杂的表集,并且还有 ajax 部分返回两个按钮:

        {
          $user = Auth::user();
          $cl = $user->client_id;
          $jb = DB::table('job')
          ->join('job_status', 'job.jobStatus_id', '=', 'job_status.id')
          ->join('customers', 'job.customer_id', '=', 'customers.id')
          ->join('users', 'job.operative_id', 'users.id')
          ->where('job.client_id', $cl)
          ->select(['job.id as id', 'job_status.status as status', 'job.customer_id as customer_id', 'customers.customer as customer', 'users.name as operative','job.address as address','job.postcode as postcode','job.slug as slug','job_status.id as jobStatusID'])
          ->get();
            return Datatables::of($jb)
             ->addColumn('action', function($pubs){
                             $btn = '<div style="float:right">
                             <a href="#" class="btn btn-outline-secondary btn-xs" title="show details" style="margin-right:.5em;font-size:.75em"><i class="fas fa-book" ></i></a><a href="#" class="btn btn-outline-secondary btn-xs" title="show details" style="margin-right:.5em;font-size:.75em"><i class="fas fa-edit" ></i></a></div>';
                            return $btn;
                      })
              ->make(true);

        }

这很好,但现在我想向按钮添加一个动作,最初是编辑,它是路线和行的 id。 如您所见,我已将 # 替换为路线,所以我有

"admin\jobView"

但我似乎无法找到从查询中添加字段(特别是 jb->id)的方法,以便操作类似于

admin\jobView\123

只是似乎无法得到它,非常感谢一些帮助!

【问题讨论】:

    标签: ajax laravel laravel-5 datatables


    【解决方案1】:

    $pubs 应该包含您的工作,因此您应该能够使用 $pubs-&gt;id 来获取工作 ID。

    我要做的就是用视图替换这个巨大的字符串,这样它就更容易维护了:

    return Datatables::of($jb)
        ->addColumn('action', function($job) {
            return (string)view('admin.jobs.action', compact('job'));
        })
        ->rawColumns(['action'])
        ->make(true);
    

    创建一个视图,例如admin/jobs/action.blade.php

    <div style="float:right">
        <a href="{{ route('admin.jobview', $job->id) }}" class="btn btn-outline-secondary btn-xs" title="show details" style="margin-right:.5em;font-size:.75em">
            <i class="fas fa-book"></i></a>
        <a href="{{ route('admin.jobview', $job->id) }}" class="btn btn-outline-secondary btn-xs" title="show details" style="margin-right:.5em;font-size:.75em">
            <i class="fas fa-edit"></i>
        </a>
    </div>
    

    【讨论】:

    • 非常感谢。真的很简单。我刚刚添加了 $pubs->id,现在链接是
    猜你喜欢
    • 2016-07-07
    • 2016-09-17
    • 2018-01-11
    • 2020-03-03
    • 2021-09-04
    • 1970-01-01
    • 1970-01-01
    • 2017-06-09
    • 1970-01-01
    相关资源
    最近更新 更多