组件基础设施,基于zope.interface

zeam.component的Python项目详细描述


zeam.component的灵感来自zope.componentgrokcore.component,但保持简单得多,并且拥有更少的 基本概念。希望这能提高灵活性。

注册

基类可以用来注册组件, zeam.component.Component。它支持所有指令 grok.contextgrok.adaptsgrok.providesgrok.name 就像在格罗克定义的那样。你可以用这些来注册 组件作为实用程序、(命名)适配器或(命名)适配器 多适配器。

注册组件的另一种可能性是使用 componentdecorator,zeam.component.component。它需要 参数组件所适应的接口,并作为关键字 参数,provides组件提供的接口, 作为name它将被注册的名称。

查找

您可以使用 zeam.component.getComponent。您可以选择提供:

  • specs:组件 必须适应才能回来。
  • provided:组件必须在中提供的接口 要退货的订单。
  • name:必须在其中注册组件的名称 要退货的订单。
  • default:如果没有组件将返回的默认值 符合要求。如果没有提供默认值,并且没有 找到组件时,将触发异常。

您可以使用查找可能已注册组件的列表 zeam.component.getAllComponents。您可以选择提供:

  • specs:对象或规范的元组stat组件必须 为了被归还而适应。
  • provided:组件必须在中提供的接口 要退货的订单。

请注意,在这两种情况下,组件都是直接返回的。在 任何情况下,都不会对查找结果进行构造。

支持相同选项的助手zeam.component.getWrapper。 否则zeam.component.getComponent函数将调用结果 作为参数传递给specs的值的查找 它。这是为了有一个getadapterqueryadapter 喜欢行为。请注意,如果在 初始化组件时,错误不会被捕获。

变化

1.0(2012/09/03)

  • 初次发布。

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

推荐PyPI第三方库


热门话题
检查java中两个链表之间的子集   java仅在findViewById()下显示一个ImageButton   在Java Graphics2D中,文本如何在矩形上居中对齐?   java需要一个用于电子表格计算器的正则表达式   ^java中的运算符   java通过一些属性配置文件根据环境动态更改wsdl端点URL   java Ebean/Play框架关系未更新   集合如何将POJO列表转换为Java流中的映射<String,List>?   java为什么JFrame不显示整个图像?   java如何将调用静态导入的泛型方法的结果传递给另一个方法?   迭代器或foreach中的java延迟   需要java socket logback日志接收器   在Java中初始化Map的静态数组   雅加达邮件Java MimeMail:解码后获得额外字符   java为什么这个xmldom解析器不能正确解析rtept、name和cmt标记?   java如何刷新Log4J2中的异步记录器(带中断器)   java使用构建插件pom生成的jar。xml作为同一pom中的依赖项   java基于位置的序列ADT如何在O(1)时间内插入元素?   java ORM实体与DDD实体   Java对象分配