从 Silverstripe BulkManager 添加和删除操作

问题描述 投票:0回答:1

向 modelAdmin 添加批量管理器,如下所示:

use Colymba\BulkManager;
class FAQAdmin extends ModelAdmin
{
public function getEditForm($id = null, $fields = null)
  {
      $form = parent::getEditForm($id, $fields);
      
      $gridField = $form->Fields()->dataFieldByName($this->sanitiseClassName($this->modelClass));

      $gridField->getConfig()->addComponent(new \Colymba\BulkManager\BulkManager());
      $gridField->getConfig()->getComponentByType('\Colymba\BulkManager\BulkManager')->removeBulkAction(\Colymba\BulkAction\UnlinkHandler::class);
    }
} 

我收到错误:

Bulk action 'Colymba\BulkAction\UnlinkHandler' or '' doesn't exists.

如何添加和删除批量编辑器提供的操作?我只想要发布操作。

silverlight-4.0 silverstripe
1个回答
0
投票

查看相关类的命名空间是:

namespace Colymba\BulkManager\BulkAction;

类名是:

UnlinkHandler

经过相当多的尝试和错误,我得到了这个工作:

$gridField->getConfig()->getComponentByType('\Colymba\BulkManager\BulkManager')->removeBulkAction(\Colymba\BulkManager\BulkAction\UnlinkHandler::class);

事后看来,这是非常明显的。

© www.soinside.com 2019 - 2024. All rights reserved.