将铅图显式转换为blob(迁移到Plone4)

时间:2011-03-09 13:48:44

标签: blob plone

测试从大型站点的Plone 3.3到Plone 4的迁移导致丢失的铅图像(使用collective.contentleadimage创建)。没有显示任何leadimages,并且对于文件夹leadimage视图,发生以下错误:

  Module Products.PageTemplates.Expressions, line 220, in evaluateStructure
  Module zope.tales.tales, line 696, in evaluate
   - URL: /opt/Plone4/buildout-cache/eggs/collective.contentleadimage-1.3.0-py2.6.egg/collective/contentleadimage/browser/folder_leadimage_view.pt
   - Line 82, Column 24
   - Expression: <PythonExpr (view.tag(item_object, css_class='tileImage'))>
   - Names:
      {'args': (),
       'container': <ATTopic at /portalok/lutheran/aktualis/aktualis>,
       'context': <ATTopic at /portalok/lutheran/aktualis/aktualis>,
       'default': <object object at 0x7f93e6c4bae0>,
       'here': <ATTopic at /portalok/lutheran/aktualis/aktualis>,
       'loop': {},
       'nothing': None,
       'options': {},
       'repeat': <Products.PageTemplates.Expressions.SafeMapping object at 0xba65310>,
       'request': <HTTPRequest, URL=http://www.lutheran.hu:9080/portalok/lutheran/aktualis/aktualis/folder_leadimage_view>,
       'root': <Application at >,
       'template': <Products.Five.browser.pagetemplatefile.ViewPageTemplateFile object at 0x5f3a810>,
       'traverse_subpath': [],
       'user': <SpecialUser 'Anonymous User'>,
       'view': <Products.Five.metaclass.SimpleViewClass from /opt/Plone4/buildout-cache/eggs/collective.contentleadimage-1.3.0-py2.6.egg/collective/contentleadimage/browser/folder_leadimage_view.pt object at 0xb3f49d0>,
       'views': <Products.Five.browser.pagetemplatefile.ViewMapper object at 0xb255810>}
  Module zope.tales.pythonexpr, line 59, in __call__
   - __traceback_info__: (view.tag(item_object, css_class='tileImage'))
  Module <string>, line 1, in <module>
  Module collective.contentleadimage.browser.folder_leadimage_view, line 30, in tag
  Module Products.Archetypes.Field, line 2558, in tag
  Module plone.app.blob.mixins, line 35, in getScale
  Module plone.app.imaging.traverse, line 52, in getScale
  Module plone.app.imaging.traverse, line 84, in createScale
  Module plone.app.blob.field, line 291, in getFilename
AttributeError: getFilename

我认为铅图尚未迁移到blob。在Plone4迁移日志中,没有关于leadimage迁移的行。

有没有办法将leadimages明确地迁移到blob?

谢谢,

Gabor Bogdanyi

1 个答案:

答案 0 :(得分:5)

从版本1.3的更改日志:

  

这个版本增加了BLOB支持,这些支持在PLONE4中成为默认的图像存储。 BLOB的迁移尚未准备好!如果您正在迁移到PLONE4,请不要使用此版本。在PLONE3或PLONE4上使用它是安全的。

这基本上意味着您可以:

  • 尝试将版本固定为1.2,并且在等待其他人解决问题时不要使用blob,或
  • 编写迁移并将其回馈。查看plone.app.blob迁移以了解它是如何完成的。我做了一个例子来做那件事,没有试过,因为p4已经出局所以你的里程可能会有所不同:http://svn.plone.org/svn/collective/example.blobattype