2012-04-25 6 views
5

Desidero utilizzare il bundle media sonata per i media nel mio pacchetto.come utilizzare il bundle media sonata con le mie entità

Ho una entità che dovrebbe avere una galleria. Dopo aver installato fascio mezzi sonata e generando facile: estende, ci sono 3 soggetti diffrent:

  • Media.php
  • gallery.php
  • GalleryHasMedia.php.

Come posso collegare queste entità alla mia entità per l'implementazione della galleria ???

risposta

4

È possibile collegare l'uno-a-uno. per esempio, la mia realizzazione:

config.yml:

contexts: 
     product: 
      providers: 
       - sonata.media.provider.image 

      formats: 
       big: { width: 1680 , quality: 100} 

gallery.php:

private $product; 

Gallery.orm.xml:

<one-to-one field="product" target-entity="Alteza\ProductBundle\Entity\Product" inversed-by="gallery"> 
     <join-column name="product_id" referenced-column-name="id" /> 
    </one-to-one> 

Product.php:

/** 
* @ORM\OneToOne(targetEntity="\Application\Sonata\MediaBundle\Entity\Gallery", mappedBy="product", cascade={"all"}) 
*/ 
private $gallery; 

ProductAdmin.php:

->add('gallery', 'sonata_type_model_list', array('required' => false), array('link_parameters' => array('context' => 'product'))) 
+0

da dove proviene la contesti di prodotti? –

Problemi correlati