我正在将 OneUp Uploader Bundle 与孤儿院一起使用,并且我不确定在通过“clear-orphans”命令清理文件后如何处理清理实体(由侦听器创建) -这通常是如何处理的?
我希望看到为每个已清理的文件触发一个事件(传递文件名和映射)但没有找到任何东西(假设事件调度程序可用于命令)。
我正在将 OneUp Uploader Bundle 与孤儿院一起使用,并且我不确定在通过“clear-orphans”命令清理文件后如何处理清理实体(由侦听器创建) -这通常是如何处理的?
我希望看到为每个已清理的文件触发一个事件(传递文件名和映射)但没有找到任何东西(假设事件调度程序可用于命令)。
OneupUploaderBundle 中的孤儿院的想法是,您不会使用不属于任何实体的文件污染您的上传文件夹。这意味着如果您在实体中使用上传的文件,您应该将它们移出孤儿院。如果您配置了映射以使用孤儿院,则所有上传的文件将在上传后存储在单独的文件夹中。
引用文档:
一旦您
uploadFiles
在 Storage 上触发该方法,它们就会被移动到正确的位置。
这意味着您可以将逻辑移出事件侦听器(将被称为非 less),但将其移至您希望最终上传文件并将其存储在孤儿院中的控制器。
// src/Acme/Controller/AcmeController.php
class AcmeController extends Controller
{
public function storeAction()
{
// ...
if ($form->isValid()) {
$orphanageManager = $this->get('oneup_uploader.orphanage_manager')->get('gallery');
// upload all files to the configured storage
$files = $manager->uploadFiles();
// your own logic to apply the files to the entity
// ...
}
}
}
确保仅在必须时才使用孤儿院。它有一些缺点。