首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使quintagroup.transmogrifier工作(版本冲突,configuration_id) (Plone)

使quintagroup.transmogrifier工作(版本冲突,configuration_id) (Plone)
EN

Stack Overflow用户
提问于 2015-07-15 17:32:43
回答 1查看 282关注 0票数 0

我想使用transmogrifier将一个Plone 4站点的一个节选复制到另一个站点。我遵循了quintagroup文档中的说明,例如这里

我将collective.transmogrifierquintagroup.transmogrifier添加到构建中:

代码语言:javascript
复制
[instance]
eggs +=
    Products.Marshall
    collective.transmogrifier
    quintagroup.transmogrifier

zcml +=
    collective.transmogrifier
    quintagroup.transmogrifier

但是,安装的collective.transmogrifier版本1.4还不够,因为它在utils模块中缺少traverse功能:

代码语言:javascript
复制
  File ".../eggs/plone.app.transmogrifier-1.3-py2.7.egg/plone/app/transmogrifier/atschemaupdater.py", line 8, in <module>
    from collective.transmogrifier.utils import traverse
zope.configuration.xmlconfig.ZopeXMLConfigurationError: File ".../parts/instance/etc/site.zcml", line 15.2-15.55
    ZopeXMLConfigurationError: File ".../parts/instance/etc/package-includes/027-quintagroup.transmogrifier-configure.zcml", line 1.0-1.70
    ZopeXMLConfigurationError: File ".../eggs/quintagroup.transmogrifier-0.5-py2.7.egg/quintagroup/transmogrifier/configure.zcml", line 11.4-11.50
    ZopeXMLConfigurationError: File ".../eggs/plone.app.transmogrifier-1.3-py2.7.egg/plone/app/transmogrifier/configure.zcml", line 9.2-12.8
    ImportError: cannot import name traverse

我在我的collective.transmogrifier = 1.5中指定了versions.cfg,然后将collective.transmogrifier<1.5中坚持的eggs/quintagroup.transmogrifier-0.5-py2.7.egg/EGG-INFO/requires.txt (,为什么?)改为

代码语言:javascript
复制
collective.transmogrifier<=1.5

在重建和重新启动之后,我能够在quickinstaller视图中添加quintagroup.transmogrifier。但是,当我试图在通用安装工具中导出站点时,我不幸地失败了:

代码语言:javascript
复制
Traceback (innermost last):
  Module ZPublisher.Publish, line 138, in publish
  Module ZPublisher.mapply, line 77, in mapply
  Module ZPublisher.Publish, line 48, in call_object
  Module Products.GenericSetup.tool, line 583, in manage_exportSelectedSteps
  Module Products.GenericSetup.tool, line 1038, in _doRunExportSteps
  Module quintagroup.transmogrifier.exportimport, line 72, in exportSiteStructure
  Module collective.transmogrifier.utils, line 118, in constructPipeline
  Module quintagroup.transmogrifier.sitewalker, line 32, in __init__
  Module collective.transmogrifier.utils, line 225, in __init__
AttributeError: Transmogrifier instance has no attribute 'configuration_id'

我之前是否保存了default导出配置文件,这并没有什么区别。

是否缺少了一些配置步骤,或者是否存在collective.transmogrifier <1.5约束的原因?我希望在完成选择白色内容之前,先看看这个作品.

EN

回答 1

Stack Overflow用户

发布于 2015-07-16 11:45:18

我以前也遇到过这种情况,但在这种情况下我可以避免使用quintagroup.transmogrifier。

这个引脚是在此承诺中移除的(虽然它比如果检查setup.py的历史的话要复杂一些)。

因此,基本上,您必须检查您的构建中的产品:

代码语言:javascript
复制
[sources]
...
quintagroup.transmogrifier = git https://github.com/collective/quintagroup.transmogrifier.git

而且,重新运行构建(可能是bin/buildout -c develop.cfg)应该这样做,但是如果在生产中这样做,这应该被看作是一种短期的攻击,而不是长期的解决方案。长期的解决方案是使用jarn.mkrelease或zest.releaser构建自己的“0.5Tobias”鸡蛋(更现代,但更难搞清楚),或者在https://github.com/collective/quintagroup.transmogrifier.git上提出一个问题,要求别人为您发布一个官方版本!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31437226

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档