我的公司随意地将我们网站的制作服务器升级到了CF9,虽然我们比较幸运的是很少有不兼容的地方,但我遇到了一个问题,在过去的一周里给我带来了相当大的悲痛。
我们的站点使用带有Transfer的Coldbox框架,通过抽象对象进行函数继承。以前在CF8中,当我要转储一个对象时,我可以查看对象中存在的所有setter和getter。但是,CF9修改了cfdump函数,仅转储对象的元数据。新的CF9文档声明有一个metainfo标记,当设置为true时,应该转储继承的对象(比如我的setter和getter,用于我的数据库列),但是在这个实例中,它不起作用。
虽然这最终不是一个令人心碎的问题,但对我来说,这是一个相当大的痛苦,因为我没有死记硬背地记住这些对象中的所有函数;我想转储一个函数,因为我知道我在寻找什么,但不太记得它的名字,结果发现它没有被抛弃,因为它是从转移中继承的。到目前为止,我已经尝试了以下几种解决方案,但没有任何结果:
cfdump metainfo=true在抽象装饰器中创建转储函数,在基装饰器中创建转储函数,在定义的覆盖装饰器中创建转储函数。
我们使用的是最新版本的Coldspring和Transfer,以及Coldbox 2.6.4。任何关于解决方案或解决方案的见解都将不胜感激。
发布于 2009-11-24 15:35:38
如果你没有让傻瓜帮你做这件事,首先要做的就是在http://cfbugs.adobe.com/cfbugreport/flexbugui/cfbugtracker/main.html上提交一个bug
接下来我要做的是在一个单独的选项卡中使用组件浏览器,以便随时准备好完整组件文档的副本以供使用:
http://[yoursite]/CFIDE/componentutils/componentdoc.cfm比cfdump更快,保存,重新加载,检查,撤消,保存,重测。组件文档应该向您展示所有继承的方法。
发布于 2009-11-25 04:40:40
如果您仍然希望恢复旧功能,并且碰巧在某个地方安装了一个CF8,那么CFDUMP是作为一个自定义标记内部实现的,因此您可以从CF8中获取旧的功能,并将其移植到cf9安装中。
只需复制/WEB/cftag/dump.cfm并将其重命名为
发布于 2009-11-24 02:34:04
创建一个转储函数来执行以下操作如何?
<cfdump var="#myobject#" label="built-in dump">
<cfdump var="#getMetaData(myobject)#" label="object metadata">getMetaData()将返回您的getter和setter
https://stackoverflow.com/questions/1787136
复制相似问题