laravel admin筛选 时间戳搜索

laravel admin筛选 时间戳搜索
laravel admin筛选 时间戳搜索
数据库用的是 int 存的时间戳 用上面的搜索无法查询时间戳,求指教
找到了解决办法:
首选在 app/Admin/Extensions/Grid 目录下新建 FilterBetween 类,继承 Encore\Admin\Grid\Filter\Between 并重写 condition 方法

代码已被折叠,点此展开

在 app/Admin/bootstrap.php 中,将表格查询过滤的 between 类型的实现类替换为新建的 FilterBetween 类

// 文件头部添加
use Encore\Admin\Grid\Filter;
use App\Admin\Extensions\Grid\FilterBetween;

// ...
// 替换
Filter::extend( 'between',  FilterBetween::class);

添加时间区间过滤时开启数据处理回调就可以了

  $grid->filter(function( $filter )use($types) {
      // ...
      // 调用 timestampValue 函数开启数据转时间搓回调
      $filter->between('start_time', __("Start time"))->datetime()->timestampValue();
      // ...
  });
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 4

whereBetween

2年前 评论
HinataiLiang (楼主) 2年前
canbez (作者) 2年前
HinataiLiang (楼主) 2年前