2012-09-10 77 views
1

我继承了Plone安装(版本2.5)。把它升级到3.3.5是至关重要的。Plone 3.3.5升级破解

我建立了一个测试环境,并使旧版本工作。我设置了3.3.5并完成了迁移步骤。现在,每当我去一个网页,我得到:

Macro Expansion failed 
exceptions.KeyError: 'header' 

我在front_page模板看(我认为这就是它叫什么),它有一个错误中列出的前沿和中心。我尝试删除宏标签,它给我一个关于需要在标签内的宏的错误。

从查看更多文档,它看起来像Plone已经不再使用宏。有没有快速修复让我们的网站按原样工作,还是我们需要重写?

编辑:从评论中提到了需要升级的附件。我如何知道我是否有加载项?我如何知道他们是否需要升级?我如何了解如何升级它们?文档充满了“最新”,但“Hows”非常稀少。

编辑:我通过查看旧的头问题(有一个头模板是在旧的安装,但没有在新的,不得不弄清楚如何得到它),现在它是给我一个关于用户宏=“脚本/宏/ jsrenderer”的错误,如果我删除了有一个用于CSS。这些看起来像plone的标准条目(因为当我谷歌这些时候出现完全相同的语法...但是我无法在任何地方找到宏的位置,这是在版本3中发生了什么变化吗? :我想我已经得到了控制它,现在,这两个设备之间来回跳跃这么痛

让我知道如果你需要任何代码感谢您的帮助

+1

如果你有任何插件,他们也需要升级几乎肯定。 – vangheem

+2

您可能在portal_skins中有一个自定义的main_template - >自定义 – aclark

+0

正如我所提到的,我是一个Plone处女。我如何知道我是否有任何附加组件?我怎么知道他们是否需要升级?我如何了解如何升级它们? – Snowburnt

回答

3

我只能。。给出调试这个错误的提示。你可以尝试的是:

  • 你能在代码中找到define-macro="header"吗?如果没有,那么你的模板试图查找并失败。

  • 在ZMI中,检查portal_skins - >属性选项卡。我认为大多数视图(模板)被映射为文件系统目录文件夹。这些需要注册在每个皮肤层。 每个条目的顺序很重要,因为这是宏查找的方式。检查每个图层是否有权访问每个目录视图。*

  • 检查定制产品是否定义了另一个'main_template.pt',它重新定义了不同的宏。

  • 根据我的经验,很多定制发生在页面模板中。在回溯中,您应该发现错误正在发生的模板。尝试查找use-macro=""语句,这些语句可能指向不同或不再存在的宏。

此外,带有宏的无页面模板仍在使用中。祝你好运!

+0

我在哪里可以找到宏?他们被列为这里/头/宏/ htmls_header等...但我没有看到我的文件系统中的文件结构。 – Snowburnt

+0

你发现的是所谓的[path expressions](http://chameleon.repoze.org/docs/latest/reference.html#macros-metal)。该语句意味着,使用最近的头对象中的html_header宏。例如,** header **可以指header.pt。 – romanofski