轻松连接到ZCML加工机械

z3c.zcmlhook的Python项目详细描述


简介

这个包提供了连接到zope(zcml)配置的方法。 过程。

自定义zcml操作

在执行 配置操作,例如执行一次性配置 不需要新的指令。<zcml:customAction />指令是 为此目的而提供。

例如,您可能希望调用 my.package.finalConfiguration()“延迟”配置操作 执行周期。这可以通过以下zcml语句实现:

<configure
    xmlns="http://namespaces.zope.org/zope"
    xmlns:zcml="http://namespaces.zope.org/zcml"
    i18n_domain="my.package">

    <include package="z3c.zcmlhook" file="meta.zcml" />

    <zcml:customAction
        handler="my.package.finalConfiguration"
        order="9999"
        />

</configure>

handler属性给出要执行的函数的名称。这个 函数不应接受参数。order属性是可选的,并且 可用于影响在配置周期中 执行。默认值,对于大多数zope配置操作, 是0

覆盖自定义操作

如果要重写 overrides.zcml,您需要告诉zope.configuration哪个处理程序 重写。您可以通过显式设置discriminator来实现这一点。一个 鉴别器用于唯一标识配置操作。在 对于<zcml:customAction />指令,鉴别器基于 默认情况下为函数的全名。因此,您可以覆盖 上面的函数调用如下:

<zcml:customAction
    handler="my.otherpackage.overrideFinalConfiguration"
    discriminator="my.package.finalConfiguration"
    order="9999"
    />

多次使用处理程序

discriminator属性还可以用于显式地允许使用 同一个处理程序不止一次。如果你想打电话 my.package.finalConfiguration同样,您通常会得到 配置冲突。但是,使用(唯一的)自定义鉴别器, 允许第二次呼叫:

<zcml:customAction
    handler="my.package.finalConfiguration"
    discriminator="my.package.finalConfiguration:early"
    order="-9999"
    />

<zcml:customAction
    handler="my.package.finalConfiguration"
    discriminator="my.package.finalConfiguration:late"
    order="9999"
    />

在这里,我们试图将配置操作称为“非常早” 以及配置过程中的“非常晚”。

更改日志

1.0b1-2010年1月2日
  • 初次发行 [选项]

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何修改打印板?   java Spring批处理JdbcCursorItemReader还是RepositoryItemReader?   java如何在JTable Swing中增加标题列的字体?   java在数组方面遇到问题,导致表达式非法启动   java如何为maven pom的某些部分关闭Eclipse代码格式化程序。xml   java Dropwizard登录代码   java Jersey 2.22:客户端的默认连接超时是多少?   java无法自动连接字段:javax。sql。数据来源   如何从java中的行列表中获取单词列表?   java JDBC批量更新和处理异常?   计算大根:bigdecimal/java   java如何在JavaCC语法中提到trycatch块   javasocket。getInetAddress()不返回任何内容   oracle SQL开发人员错误无法找到Java虚拟机   java我如何计算和显示未来5年每一年的投资价值   java如何关闭浏览器选项卡?   java如何在showMessageDialog中打印双2D数组?   java从站点抓取播放列表URL?   selenium中的java点击css按钮