我创建了一个自定义模块,在控制器文件中我使用了File :: load static方法。但是当我运行phpcs检查编码标准时,它会给出一个错误
应该在类中避免使用File :: load调用,而是使用依赖注入
任何人都可以告诉我们如何为此创建依赖注入。
答案 0 :(得分:1)
使用Drupal \ Core \ Entity \ EntityTypeManagerInterface实现。
use Drupal\Core\Entity\EntityTypeManagerInterface;
class MyForm extends FormBase {
/**
* The storage handler class for files.
*
* @var \Drupal\file\FileStorage
*/
protected $fileStorage;
/**
* This is an example.
*
* @param \Drupal\Core\Entity\EntityTypeManagerInterface $entity
* The Entity type manager service.
*/
public function __construct(EntityTypeManagerInterface $entity) {
$this->fileStorage = $entity->getStorage('file');
}
....
}
您可以在此处将File::load($fid)
更新为$this->fileStorage->load($fid)