gpt4 book ai didi

plone - 无需接触模板即可自定义 Plone View 类

转载 作者:行者123 更新时间:2023-12-01 08:57:08 25 4
gpt4 key购买 nike

如果一个 View 是这样注册的,用zcml中的模板定义:

<browser:page
name="original-view"
class=".original_view.View"
permission="zope2.View"
for="*"
template="original_template.pt"
/>

我只想在我的产品中自定义他的类,有没有办法在不自定义模板的情况下做到这一点?

最佳答案

你必须用 <configure package='XXXX'> 包装浏览器:页面

这意味着你当时在这个包的范围内。

例子:

<configure package="original.package.browser">
<!-- custom view -->
<browser:page
name="original-view"
class="your.package.browser.View" <!-- Full dotted name to you custom view class -->
permission="zope2.View"
for="*"
layer="your.package.interfaces.IYourPackageLayer" <!-- You should provide a browserlayer, otherwise you got a configuration conflict -->
template="original_template.pt" <!-- template from original.package.browser -->
/>

</configure>

编辑:

正如@sdupton 所提到的,我更新了带有层的示例代码如果您不能使用图层(BrowserLayer),您可以将没有图层属性的代码放入 overrides.zcml

您还可以指定更精确的 Interfacefor属性

关于plone - 无需接触模板即可自定义 Plone View 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26863108/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com