【发布时间】:2018-07-05 05:52:04
【问题描述】:
我确信我遗漏了一些明显的东西,但这是我第一次尝试实际创建自己的模块,而且文档似乎对我没有任何好处。
问题是我添加的这个新字段的依赖似乎正在工作,因为我收到 SQL 错误说它在图像表中找不到该字段,但是 /dev/build 没有创建新的柱子。我什至尝试手动添加该列,然后似乎一切正常——但这无助于将其安装到我同事的计算机或任何其他站点上。
以下是它们的基本文件(一些名称已稍作更改,但要点仍然相同):
/tinyimage-uploads/_config.php
<?php
Object::add_extension('Image', 'TinyImageExtension');
/tinyimage-uploads/code/TinyImageExtension.php
<?php
class TinyImageExtension extends DataExtension {
private static $db = array(
'Compressed' => 'Boolean'
);
}
我需要为此添加大量方法,特别是 onAfterUpload() ——但我什至无法创建这个字段。我已经尝试基于 Focuspoint Link to Github 进行此操作——因为它也安装在站点上,但我对此并不走运。所有文档都告诉我这应该足够了,还有一些告诉我在 DataExtension 中不允许使用静态方法……但这似乎在我们安装的许多其他模块中都可以正常工作。
请帮忙,这让我发疯,我不知道这是否只是意味着我的 Apache 有问题,或者我只是缺少模块的一些基本文件,只是没有运气找到正确的文档让我开始吧。
【问题讨论】:
-
你添加扩展后是否运行
dev/build/?flush?开发/构建以“完成”结束还是有其他问题? -
是的,我尝试了所有有意义的方法,dev/build,dev/build?flush,甚至重新启动我的计算机以防我的 Apache 中的某些东西搞砸了,仍然没有运气:/ 仍然显示“数据库每次都构建完成”,即使当我尝试访问任何页面时都会出现 SQL 错误,告诉我“Image.Compressed”列不存在
标签: php image module silverstripe