Laravel Backpack自定义导出文件名方法咨询
修改Laravel Backpack导出文件的文件名格式
要实现导出文件名「表名_YYYY-MM-DD HH:MM:SS」的格式,直接在Crud控制器里重写export方法即可,步骤如下:
- 在你的Crud控制器中,重写
export方法,自定义文件名生成逻辑:
public function export($exportType) { // 获取当前模型对应的数据库表名 $tableName = $this->crud->model->getTable(); // 生成带时间戳的文件名 $filename = "{$tableName}_" . now()->format('Y-m-d H:i:s'); // 调用父类的export方法,传入自定义文件名 return parent::export($exportType, $filename); }
- 保持原有的导出按钮启用代码不变:
// 在setup()方法中 $this->crud->enableExportButtons();
设置完成后,点击导出按钮(Excel/CSV/PDF)时,生成的文件名会自动按照「表名_YYYY-MM-DD HH:MM:SS」格式命名,比如users_2024-05-20 14:30:00.xlsx。
如果需要对不同导出类型做差异化处理,也可以在export方法里根据$exportType参数调整文件名后缀:
public function export($exportType) { $tableName = $this->crud->model->getTable(); $timestamp = now()->format('Y-m-d H:i:s'); // 根据导出类型添加后缀 $filename = "{$tableName}_{$timestamp}.{$exportType}"; return parent::export($exportType, $filename); }
内容的提问来源于stack exchange,提问作者Edz
相关产品推荐
相关产品推荐

