[英]How to upload an image using Sonata Media Bundle
我正在使用symfony進行項目。我想使用Sonata Media捆綁軟件來上傳圖像。 不幸的是,我不知道如何使用它或如何開始。
我有這種形式:
<form action="" method="POST" class="filePhotoForm form-inline" role="form">
<div class="form-group">
<input type="button" class="btn btn-start-order browse" value="Browse">
<input type="text" class="form-control file-name" readonly="readonly" placeholder="No file selected">
<input type="file" name="filePhoto" id="filePhoto" class="hidden file-upload">
</div><br/><br/>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
和控制器中的代碼:
public function changePictureAction(Request $request)
{
return $this->render('MedAppBundle:Profile:change_picture.html.twig');
}
您可以提供有關上傳的基礎知識嗎?
謝謝!
我為此做了一個自定義功能
protected function saveImageMediaBundle($file,$context = 'default')
{
$mediaManager = $this->get('sonata.media.manager.media');
$media = new Media();
$media->setContext($context);
$media->setProviderName('sonata.media.provider.image');
$media->setBinaryContent($file);
$mediaManager->save($media);
return $media;
}
並以此獲取文件
$file = $request->files->get('newsImage',null);
$media = $this->saveImageMediaBundle($file,'news');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.