laravel - 背包 - addFilter 自定义查询
Posted
技术标签:
【中文标题】laravel - 背包 - addFilter 自定义查询【英文标题】:laravel - backpack - addFilter custom query 【发布时间】:2020-08-22 13:50:09 【问题描述】:如何创建函数以在列表中显示结果? - 背包
此代码返回错误 消息:“调用数组上的成员函数 count()”,异常:“错误”,... 异常:“错误” 文件:“位置/crm/供应商/背包/crud/src/app/Library/CrudPanel/Traits/Query.php” 线路:144 消息:“调用数组上的成员函数 count()” 追踪:[,…]
$this->crud->addFilter([ // select2 filter
'name' => 'version',
'type' => 'select2',
'label'=> 'Status'
], function()
return [
'something1' => 'something1',
'something2' => 'something2',
];
, function($value)
//dump($this->crud);
$query = DB::select("SELECT s.system_id FROM(
SELECT s.id as system_id, (SELECT max(id) FROM licenses l WHERE s.id = l.system_id) as license_id FROM systems s
) s LEFT JOIN licenses l ON l.id = s.license_id WHERE l.version= '$value' ORDER BY s.system_id");
return $this->crud->query = $query;
);
【问题讨论】:
Backpack List 操作仅适用于 Eloquent,不适用于 DB 结果。您应该使用 Eloquent 重写您的 db 语句以使其正常工作。 【参考方案1】:有一些关于自定义过滤器的东西; https://github.com/Laravel-Backpack/CRUD/issues/83
您可以按照该讨论的示例来创建自己的过滤器方法。
或者这里是一个微笑的问题:Filter table with a column in Laravel Backpack
或者也许,数据透视表样本;)backpack crud filters by pivot table
【讨论】:
以上是关于laravel - 背包 - addFilter 自定义查询的主要内容,如果未能解决你的问题,请参考以下文章