2

プロジェクトにドクトリン拡張を統合しました。Timestampable は例として機能しています。しかし、「アップロード可能」動作を使用するにはどうすればよいでしょうか?

このドキュメントを読みました。彼らは の使用について使用部分$listenerに書いていますが、どうすればこの変数を取得できますか? 私のコントローラーまたはサービスで?それはどこから来たのですか?

アドバイスをありがとう...

4

1 に答える 1

1

最後に、それを手に入れました...:

それ以外の:

'doctrine' => array(
    'eventmanager' => array(
        'orm_default' => array(
            'subscribers' => array(
                'Gedmo\Uploadable\UploadableListener',
                //...
            ),
        ),
    ),
   'driver' => array(
        // ...
    ),
),

これを使用します: servicemanager を介してアップロード可能なリスナーを登録します。

    'doctrine' => array(
    'eventmanager' => array(
        'orm_default' => array(
            'subscribers' => array(
                'doctrine_extensions.uploadable',
                //...
            ),
        ),
    ),
   'driver' => array(
        // ...
    ),
),
'service_manager' => array(
    'invokables' => array(
        'doctrine_extensions.uploadable'    => 'Gedmo\Uploadable\UploadableListener'
    )
),

例としてコントローラーでは、次のように機能します。

$uploadManager = $this->getServiceLocator()->get('doctrine_extensions.uploadable');
foreach($this->getRequest()->getFiles()->toArray() as $file) {
    $entity = new MyEntity();
    $uploadManager->addEntityFileInfo($entity, $file);

    // persist($entity) ...
}
于 2013-11-07T08:16:45.250 に答える