【发布时间】:2013-07-02 21:30:54
【问题描述】:
我正在使用 cakephp 为网站编写一个小型新闻组件。理想的工作方式是让管理员输入新闻项目的标题、来源、指向它的链接(如果可用)、其内容(进行备份)和随附的图像。
除了图像部分外,一切正常。由于每个条目最多只有一个图像,因此我将图像信息存储在存储帖子的同一个数据库表中。到目前为止,我已经设法将图像文件上传到 app/uploads/ 并将其数据(名称、大小和类型)添加到数据库中。
现在我不能显示它。
我所做的只是环顾四周,使用以下方法将图像设置为页面的单一内容:
$this->response->file($url);
但是,我需要能够将此图像显示为网站的嵌入部分,就像显示网络中的大多数图像一样。我一直在环顾四周,似乎找不到任何合适的指导。最简单的解决方案(通过知道图像文件夹的路径链接到图像)也不起作用,因为它们位于 app/uploads 中,这意味着如果我链接到那里 cakephp 认为我正在调用一个没有的“上传”类不存在。使用 MOD_REWRITE 可能是一种选择,但老实说,在我看来这更像是一种 hack,因为必须有一种方法来获取存储的文件并将其作为图像转储,以便它可以嵌入到非常存储它的网站。
有人知道吗?
【问题讨论】:
-
不能把图片放到
app/webroot/uploads里? -
我已经考虑过(将它们放在蛋糕文件夹之外),但它有点相同 - Cakephp 应该有办法做到这一点而不诉诸这些技巧,理想情况下我想要与其文件夹中的蛋糕应用程序有关的所有文件。顺便说一句,app/whatever 我指的是 cakephp 程序正在运行的 app 文件夹(也就是说,已经在 Web 服务器中),而不是我电脑的相对地址。
-
your-cake-folder/app/webroot/uploads将在 cake 文件夹内(webroot是存储所有需要公开访问的文件的文件夹,如 css 和 js),它符合您的要求。为此,我不建议将图像存储在蛋糕之外。 -
好吧,我现在觉得自己很愚蠢,但效果很好。有趣的是,我已经在这里和那里从 cakephp 教程中获取信息一周了,并且不记得曾经阅读过有关 webroot 文件夹的信息。非常感谢! (顺便问一下,我如何将您的帖子标记为答案?)
-
我没有发布任何内容,我只是发表了评论。我现在将我们讨论过的内容发布一个答案,以便您标记它(我的答案旁边会有一个复选标记)
标签: php image cakephp image-processing cakephp-2.3