我有许多 ORM 实体,我想将它们链接到它们相应的文件。示例:带有 MotorsFile 的实体 Motors,带有 HousesFile 的 Houses,...
这些 ORM 实体可以很容易地定义。这不是问题。但是,我的问题是:“是否可以在使用 OneupUploaderBundle 时定义许多 ORM 实体,例如 MotorsFile 和HousesFile?”
我问这个问题是因为处理这些上传的文件需要创建一个事件监听器PostUploadEvent
和PostPersistEvent
. 事件侦听器将是这样的:
<?php
namespace Acme\HelloBundle\EventListener;
use Oneup\UploaderBundle\Event\PostPersistEvent;
use Minn\AdsBundle\Entity\MotorsAdsFile;
class UploadListener
{
protected $manager;
public function __construct(EntityManager $manager)
{
$this->manager = $manager;
}
public function onUpload(PostPersistEvent $event)
{
$file = $event->getFile();
$object = new MotorsFile();
$object->setFilename($file->getPathName());
$this->manager->persist($object);
$this->manager->flush();
}
}
但是,此代码将只允许我保留一个实体(对于此示例 MotorsFile)。那么,是否可以指定上传的文件对应于哪个实体呢?
谢谢...