symfony-sonata - 如何将奏鸣曲媒体包与我的实体一起使用

标签 symfony-sonata

我想将奏鸣曲媒体包用于我的包中的媒体。

我有一个实体应该有一个画廊。安装奏鸣曲媒体包并生成 easy:extends 后,有 3 个不同的实体:

  • 媒体.php
  • Gallery.php
  • GalleryHasMedia.php。

  • 如何将这些实体链接到我自己的实体以实现画廊???

    最佳答案

    您可以一对一链接。
    例如,我的实现:

    配置文件:

    contexts:
            product:
                providers:
                    - sonata.media.provider.image
    
                formats:
                    big:   { width: 1680 , quality: 100}
    

    画廊.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>
    

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

    产品管理.php:
    ->add('gallery', 'sonata_type_model_list', array('required' => false), array('link_parameters'   => array('context' => 'product')))
    

    关于symfony-sonata - 如何将奏鸣曲媒体包与我的实体一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10321609/

    相关文章:

    sonata-admin - 获取 Admin::configureListFields 中当前元素的 id

    php - 如何在 SonataAdminBundle 的上传字段上方显示当前图片?

    php - 下拉 Ajax onchange SonataAdminBundle Symfony2 问题

    symfony - 如何在 symfony 2 中验证奏鸣曲媒体类型

    symfony - SonataAdminBundle model_type 值以过滤器形式过滤

    symfony - 覆盖用户管理表单

    javascript - SonataMediaBundle : a way to remove unlink thickbox

    php - Sonata sonata_type_model_list 显示对象名称

    php - Symfony2 + Doctrine 管理大尺寸数据生成错误 : Error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 5131594 bytes)

    php - SonataAdminBundle 内嵌表单 sonata_admin_type 问题