使用VichUploaderBundle时如何禁用自动图像渲染?我将以树枝形式分别显示图像,因此不需要VichUploaderBundle来呈现图像。
我的代码如下所示:
/**
* @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()
]);
}
树枝模板
<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>
感谢您的协助。
答案 0 :(得分:0)
只需将image_uri设置为false即可阻止它:
$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)中的相关部分:
{% 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 %}