2012-05-04 100 views
2

當我的圖像保存在我的包目錄結構顯示圖像很容易與Assetic從文檔:Symfony2 Assetic:如何顯示上傳圖像的路徑存儲在數據庫中?

{% image '@AcmeFooBundle/Resources/public/images/example.jpg' 
    filter='jpegoptim' output='/images/example.jpg' 
%} 
<img src="{{ asset_url }}" alt="Example"/> 
{% endimage %} 

,但我該如何使用assetic我上傳的圖片?在我的getWebPath下面返回相對於web dir的路徑,例如:「/uploads/images/image.jpg」。也許這個解決方案是好的,不需要使用資產?我覺得用它像上面jpegoptim一些過濾可能是有用的

<img src="{{app.request.basepath}}/{{ entity.getWebPath }}"> 

回答

5
<img src="{{ app.request.scheme ~ '://' ~ app.request.host ~ '/' ~ entity.getWebPath }}" /> 
+0

我在第二段代碼中完成了同樣的工作,問題是如何使用Assetic做到這一點。 – nysander

+0

在你的getWebPath返回相對於web dir的路徑例如:「/uploads/images/image.jpg」你只能做到這一點,它完美的工作'',瀏覽器會自動添加主機名:) –

+0

我試過了然後路徑相對於我的行爲和參數路由f.ex:app.php/action/param1/param2/uploads/images/image.jpg,結果得到了404圖像 – nysander

0

,你可以把它們存儲在該automaticcaly生成的Web direectory '上傳/文件/' 使用getUploadRootDir(),getAbsolutePath().. 。並打電話給他們使用
src =「{{asset('uploads/files /'〜entity.path)}}」

相關問題