我使用Symfony网站上的文档提供的代码示例在Symfony2中创建文件上传功能
public function getAbsolutePath()
{
return null === $this->path
? null
: $this->getUploadRootDir().'/'.$this->path;
}
public function getWebPath()
{
return null === $this->path
? null
: $this->getUploadDir().'/'.$this->path;
}
protected function getUploadRootDir()
{
// the absolute directory path where uploaded
// documents should be saved
// return __DIR__.'/../../../../web/'.$this->getUploadDir();
return __DIR__.'/../../../../../web/'.$this->getUploadDir();
}
protected function getUploadDir()
{
// get rid of the __DIR__ so it doesn't screw up
// when displaying uploaded doc/image in the view.
return 'uploads/documents';
}
我可以上传文件但是枝条无法显示
<td><img src="/uploads/documents/{{ task.path }}" id="img-responsive"> </td>
使用Google的开发人员工具进行检查会显示图片的正确链接
<img src="/uploads/documents/Desert.jpg" id="img-responsive">
将图片网址复制到浏览器显示
Object not found
404
在这种情况下,您如何显示在Symfony上传的图像?
app
src
web
bundles
uploads
documents
return __DIR__.'/../../../../../web/'.$this->getUploadDir();
更新
路径保存在数据库中
path id
Desert.jpg 1
cat.jpg 2
dog.jpg 3
答案 0 :(得分:0)
您可以使用DevDonkey建议,也可以像这样更改代码
<td><img src="yourhost.com/web/uploads/documents/{{ task.path }}" id="img-responsive"> </td>
这应该可以正常运行,并且在我当前的项目中使用它。