首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VichUploaderBundle:禁用细枝形式的自动图像渲染

VichUploaderBundle:禁用细枝形式的自动图像渲染
EN

Stack Overflow用户
提问于 2018-12-26 18:11:46
回答 1查看 167关注 0票数 1

如何在使用VichUploaderBundle时禁用自动图像渲染?我在我的细枝形式中单独显示图像,所以不需要VichUploaderBundle来渲染图像。

我的代码如下所示:

代码语言:javascript
复制
/**
 * @Route("/testupload", name="testupload")
 */
public function testUploadAction(Request $request){

    $testUpload = new TestUpload();
    $em = $this->getDoctrine()->getManager();

    $form = $this->createFormBuilder($testUpload)
        ->add('imageFile', VichImageType::class, array(
            'label'             => false,
            'required'          => false,
            'image_uri'         => true,
            'download_link'     => false
        ))
        ->add('upload',SubmitType::class, array('label' => 'Upload'))
        ->getForm();

    $form->handleRequest($request);

    if ($form->isSubmitted() && $form->isValid()) {
        $testUpload = $form->getData();
        $em->persist($testUpload);
        $em->flush();
    }

    $images = $em->getRepository(TestUpload::class)->findAll();

    return $this->render('main/rotta_upload_test.html.twig', [
        'title' => 'Upload test',
        'images' => $images,
        'form' => $form->createView()
    ]);

}

小枝模板

代码语言:javascript
复制
<div class="large-8 medium-8 cell">
    <div class="callout">

        {{ form_start(form) }}            
        {{ form_widget(form) }}
        {{ form_end(form) }}

        {% for image in images %}
            <img src="{{ asset(vich_uploader_asset(image, 'imageFile')) 
}}" alt="image 1"  width="300" />
        {% endfor %}

    </div>
</div>

任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

发布于 2019-01-11 20:16:46

只需将image_uri设置为false就可以阻止它:

代码语言:javascript
复制
$form = $this->createFormBuilder($testUpload)
        ->add('imageFile', VichImageType::class, array(
            'label'             => false,
            'required'          => false,
            'image_uri'         => false,
            'download_link'     => false
        ))
        ->add('upload',SubmitType::class, array('label' => 'Upload'))
        ->getForm();

请参阅form_theme ( https://github.com/dustin10/VichUploaderBundle/blob/master/Resources/views/Form/fields.html.twig#L34 )中的相关部分:

代码语言:javascript
复制
{% block vich_image_widget %}
    {% spaceless %}
        <div class="vich-image">
            {{ form_widget(form.file) }}
            {% if form.delete is defined %}
                {{ form_row(form.delete) }}
            {% endif %}

            {% if image_uri %}
                <a href="{{ image_uri }}"><img src="{{ image_uri }}" alt="" /></a>
            {% endif %}
            {% if download_uri %}
                <a href="{{ download_uri }}">{{ translation_domain is same as(false) ? download_label : download_label|trans({}, translation_domain) }}</a>
            {% endif %}
        </div>
    {% endspaceless %}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53930548

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档