zope.configuration proporciona un sistema extensible para apoyar diversos tipos de configuraciones.
Se basa en la idea de directivas de configuración. Los usuarios del sistema de configuración proporcionan directivas de configuración en un lenguaje que exprese las opciones de configuración. La intención es que el lenguaje sea conectable. Un lenguaje XML se proporciona de forma predeterminada.
Documentación detallada
Sistema de configuración Zope
El sistema de configuración zope ofrece un sistema extensible para soportar tipos variouse de configuraciones.
Se basa en la idea de directivas de configuración. Los usuarios del sistema de configuración proporcionan directivas de configuración en un lenguaje que exprese las opciones de configuración. La intención es que el lenguaje sea conectable. Un lenguaje XML se proporciona de forma predeterminada.
La configuración se realiza en tres etapas. En la primera etapa, las directivas se procesan para calcular acciones de configuración. Acciones de configuración consisten en:
- Un discriminador
- Un exigible
- argumentos posicionales
- argumentos de palabras clave
Las acciones son esencialmente retraso llamadas a funciones. Conflicto Dos o más acciones si tienen el mismo discriminador. El sistema de configuración tiene normas para resolver los conflictos. Si los conflictos no se pueden resolver, se producirá un error. La resolución de conflictos típicamente descarta todas menos una de las acciones en conflicto, por lo que los conflictos la acción restante de las acciones originalmente conflictivas ya no importa. Acciones que no resulten contradictorias se ejecutan en el orden en que se crearon haciendo pasar los argumentos posicionales y no posicionales a la acción exigible.
El sistema es extensible. Hay un lenguaje meta-configuración para definir directivas de configuración. Una directiva se define al proporcionar los metadatos sobre el código de directiva y controlador procese la directiva. Hay cuatro tipos de instrucciones:
- directivas simples computan las acciones de configuración. Sus manejadores son típicamente funciones que toman un contexto y cero o más argumentos de palabra clave y devuelven una secuencia de acciones de configuración.
- Para aprender a crear directivas simples, ver pruebas / test_simple.py.
- Agrupación directivas recopilan información para ser utilizada por las directivas anidadas. Se les llama con un objeto de contexto que se adaptan a alguna de las interfaces que se extiende IConfigurationContext.
- Para aprender a crear directivas de agrupación, mirar la documentación en zopeconfigure.py, que proporciona la aplicación de la directiva de configuración zope.
& Nbsp; Otras directivas se pueden anidar en la agrupación de directivas.
- Para aprender cómo implementar directivas anidadas, mirar la documentación en las pruebas / test_nested.py.
- Directivas complejas son las directivas que tienen subdirectivas. Subdirectivas tienen manipuladores que son simplemente métodos de directivas complejas. Diretives complejos están a cargo de las fábricas, por lo general, las clases que crean objetos que tienen métodos para el manejo de subdirectivas. Estos objetos también tienen métodos __call__ que se llaman cuando se termina el procesamiento de subdirectivas.
- Directivas complejas sólo existen para apoyar a los manipuladores de directiva de edad. Ellos probablemente serán obsoletos en el futuro.
- Subdirectivas se anidan en directivas complejas. Son como las directivas simples, excepto que Hane manipuladores que son métodos directivos complejos.
- subdirectivas, como directivas complejas sólo existen para apoyar a los manipuladores de directiva de edad. Ellos probablemente serán obsoletos en el futuro
¿Cuál es nuevo en esta versión:..
- 100% de cobertura de prueba de unidad
- acumulación automática de documentos Esfinge HTML y funcionando doctest fragmentos a través de tox.
- Caído difícil probar la dependencia de zope.testing.
- Alta apoyo explícito a PyPy.
- Alta apoyo explícito a Python 3.2.
- Abandonado apoyo explícito a Python 2.4 / 2.5.
- Se ha añadido soporte para la integración continua usando tox y Jenkins.
- documentación Agregado Esfinge.
- Añadido docs setup.py alias (instala Esfinge y dependencias).
- setup.py Añadido dev alias (carreras setup.py desarrollar además instala la nariz y la cobertura).
¿Qué hay de nuevo en la versión 3.8.1:
- Fijo Python 2.4 revés INCOMPAT (itemgetter utilizar con múltiples args); Python 2.4 ahora funciona (al menos si utiliza zope.schema == 3.8.1). Esta es la última versión que apoyará Python 2.4 o 2.5.
¿Cuál es nuevo en la versión 3.8.0:
- estructuras de acción cambiado de tuplas a diccionarios para permitir estructura de acción extensibilidad (fusionadas crisma-dictactions rama).
Requisitos :
- Python
Comentarios que no se encuentran