dnadesign / gridfield-bulk-delete
一个允许批量删除记录的GridField组件
1.3
2023-12-12 21:26 UTC
Requires
- silverstripe/cms: ^4.4 || ^5
- symbiote/silverstripe-queuedjobs: ^4 || ^5
This package is auto-updated.
Last update: 2024-09-12 23:10:41 UTC
README
简介
将GridFieldBulkDeleteForm
组件添加到gridfield配置中,以添加在列表中删除记录的选项。默认情况下,它允许删除列表中的所有记录。如果有超过50条记录(可以配置)并且如果队列作业可用,将创建一个队列作业来处理删除。该组件可以配置为允许删除超过一定时间(例如:超过30天的记录)的记录。
要求
安装
composer require dnadesign/gridfield-bulk-delete ^1
注意:对于SS3,使用版本0.2
配置
添加到gridfield配置
$config->addComponent(new GridFieldBulkDeleteForm('buttons-after-right'));
可选,传递一个队列作业应该使用的记录数(默认为50)。
$config->addComponent(new GridFieldBulkDeleteForm('buttons-after-right', 100));
使用队列作业
在你的mysite/_config/config.yml
文件中
GridFieldBulkDeleteForm:
use_queued_threshold: 100
注意:将值设置为0或-1以永不使用队列作业。
启用时间间隔
在你的mysite/_config/config.yml
文件中
GridFieldBulkDeleteForm:
delete_up_to:
'30 days' : 'Delete records created over a month ago (%s)'
注意:值必须对与DateTime
modify()一起使用有效。同时,为sprintf()
提供标签,其中受影响的记录数将作为参数提供。
下一项改进
- 分块删除记录,而不是运行出内存的大作业