php - Laravel Yajra Datatable if addColumn 上的语句

标签 php laravel

我坚持在 addColumn 语句中添加 if 语句:

$inquiries = Inquiry::with('customer')->get();

return Datatables::of($inquiries)
    ->editColumn('created_at', function ($inquiry) {
        return $inquiry->created_at->format('d-m-Y');
    })
    ->editColumn('due_date', function ($inquiry) {
        return Carbon::parse($inquiry->due_date)->format('d-m-Y');
    })
    ->editColumn('status', '@if($status == 0) Pending @elseif($status == 1) Accept @else Cancel @endif')
    ->addColumn('action', function ($inquiry) {
        return '
        <a href="/inquiries/' . $inquiry->id . '" class="btn btn-xs btn-primary"><i class="glyphicon glyphicon-edit"></i> View</a>
        <a href="/inquiries/' . $inquiry->id . '/edit" class="btn btn-xs btn-primary"><i class="glyphicon glyphicon-edit"></i> Edit</a>
        <a href="#" id="delete-button" data-id="' . $inquiry->id . '" class="btn btn-xs btn-primary"><i class="glyphicon glyphicon-edit"></i> Delete</a>
        ';
    })
    ->make(true);

我尝试输入 @if @endif 但它似乎打印出来而不是成为一个函数

我想根据状态显示操作按钮。

有什么解决办法吗?

谢谢

最佳答案

你能做如下的事情吗?

->editColumn('status', function ($inquiry) {
    if ($inquiry->status == 0) return 'Pending';
    if ($inquiry->status == 1) return 'Accept';
    return 'Cancel';
})

关于php - Laravel Yajra Datatable if addColumn 上的语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39618764/

相关文章:

PHP 类以某种方式发生冲突

php - Cakephp 系统用于更新给定 id 的行,如果 id 不存在,则创建一个新行

php - Laravel 5 中的中间件和服务提供者之间的区别?

javascript - Laravel 请求 $request->file() 始终为空

php - Laravel 表单模型绑定(bind)

php - 从数据库检索时图像损坏

php - $(this).next() 的问题

javascript - Jquery ajax请求不能在FF和safari中工作,在chrome中工作

mysql - 按最新消息进行群组对话 Laravel

Laravel 4.2 抛出 NotReadableException "Unsupported image type. GD driver is only able to decode JPG, PNG, GIF or WebP files."