【问题标题】:Symfony2.6 & Sonata Media Bundle &SonataUserBundle: How to get image preview in edit formSymfony2.6 & Sonata Media Bundle &SonataUserBundle:如何在编辑表单中获得图像预览
【发布时间】:2015-07-07 18:38:31
【问题描述】:

我正在上传一张图片(Sonata Media Bundle 的媒体实体)并将其映射到用户(Sonata User Bundle 的供应商实体)。图片被上传,媒体表中的条目被创建,媒体条目的键被添加到用户表中。没有触发错误。但是当我打开表单来编辑用户时,我在文件输入按钮附近看不到图像预览和文件名。好像表单无法识别关联文件用户。这是我的代码:

/app/config/config.yml:

sonata_media:
  contexts:
    vendor:
        providers:
            - sonata.media.provider.image
            - sonata.media.provider.file
        formats:
            small_square: { width: 104, height: 104, quality: 70}
            small_portrait: { height: 119, quality: 90}
            small: { width: 100 , quality: 70}
            big:   { width: 1000 , quality: 70}

/src/Application/Sonata/UserBundle/Admin/VendorAdmin.php:

protected function configureFormFields(FormMapper $formMapper)
{
     ...
     $formMapper
          ->with('Gallery', array('class' => 'gallery'))
            ->add('userRatingFile', 'sonata_media_type', array('label' => 'Images', 'required' => false,
                'cascade_validation' => true,
                'context' => 'vendor',
                'provider' => 'sonata.media.provider.image'
            ))
            ->end();
      ...
}

private function doPreLogic($vendor)
{
    ...
    $vendor->setUserRatingFile($vendor->getUserRatingFile());
}

/src/Application/Sonata/UserBundle/Resources/config/doctrine/UserType.Vendor.orm.xml:

<one-to-one field="userRatingFile" target-entity="Application\Sonata\MediaBundle\Entity\Media">
    <cascade>
        <cascade-all/>
    </cascade>
    <join-column name="userRatingFile_id" referenced-column-name="id" />
</one-to-one>

缺少什么?如何添加上传文件的预览?

【问题讨论】:

    标签: php symfony sonata-user-bundle sonata-media-bundle


    【解决方案1】:

    你必须配置树枝:

    # Twig Configuration
    twig:
        debug:            "%kernel.debug%"
        strict_variables: "%kernel.debug%"
            form:
                resources:
                    #...
                    - SonataMediaBundle:Form:media_widgets.html.twig
    

    【讨论】:

      猜你喜欢
      • 2018-12-01
      • 2021-09-29
      • 2019-03-19
      • 2016-09-03
      • 2013-12-21
      • 2019-01-12
      • 1970-01-01
      • 2015-05-09
      • 2014-03-31
      相关资源
      最近更新 更多