1745
1745
de forma separada.
1748
LocationPhysicallyLocatable
1749
~~~~~~~~~~~~~~~~~~~~~~~~~~~
1748
LocationPhysicallyLocatable (LocalizaciónFisicaLocalizable)
1749
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1752
1752
``zope.location.traversing.LocationPhysicallyLocatable``
1754
This adapter is frequently used in Zope 3 applications, but
1755
normally it is called through an API in ``zope.traversing.api``.
1756
(Some old code even use ``zope.app.zapi`` functions, which is
1757
again one more indirection)
1754
Este adaptador se usa a menudo en las aplicaciones Zope 3, pero
1755
normalmente se llama a través de una API en ``zope.traversing.api``.
1756
(Hay código antiguo que incluso usa las funciones de
1757
``zope.app.zapi``, que es una indirección más).
1759
The registration of adapter is like this::
1759
El registro del adaptador es así::
1762
1762
factory="zope.location.traversing.LocationPhysicallyLocatable"
1765
The interface provided and adaptee interface is given in the
1765
La interfaz ofrecida y la interfaz del adaptado se da en la
1768
Here is the beginning of implementation::
1768
Aquí tenemos el inicio de la implementación::
1770
1770
class LocationPhysicallyLocatable(object):
1771
1771
"""Provide location information for location objects
1774
1774
zope.interface.implements(IPhysicallyLocatable)
1777
Normally, almost all persistent objects in Zope 3 application
1778
will be providing the ``ILocation`` interface. This interface
1779
has only two attribute, ``__parent__`` and ``__name__``. The
1780
``__parent__`` is the parent in the location hierarchy. And
1781
``__name__`` is the name within the parent.
1783
The ``IPhysicallyLocatable`` interface has four methods:
1784
``getRoot``, ``getPath``, ``getName``, and ``getNearestSite``.
1786
- ``getRoot`` function will return the physical root object.
1788
- ``getPath`` return the physical path to the object as a
1791
- ``getName`` return the last segment of the physical path.
1793
- ``getNearestSite`` return the site the object is contained
1794
in. If the object is a site, the object itself is returned.
1796
If you learn Zope 3, you can see that these are the important
1797
things which you required very often. To understand the beauty
1798
of this system, you must see how Zope 2 actually get the physical
1799
root object and how it is implemented. There is a method called
1800
``getPhysicalRoot`` virtually for all container objects.
1806
Location: ``zope.size.DefaultSized``
1808
This adapter is just a default implementation of ``ISized`` interface.
1809
This adapter is registered for all kind of objects. If you want to
1810
register this adapter for a particular interface, then you have to
1811
override this registration for your implementation.
1813
The registration of adapter is like this::
1777
Normalmente, casi todos los objetos persistentes en las aplicaciones
1778
Zope 3 ofrecerán la interfaz ``ILocation``. Esta interfaz sólo tiene
1779
dos atributos, ``__parent__`` y ``__name__``. El ``__parent__`` es
1780
el padre en la jerarquía de localización. Y ``__name__`` es el
1781
nombre dentro del padre.
1783
La interfaz ``IPhysicallyLocatable`` tiene cuatro métodos:
1784
``getRoot``, ``getPath``, ``getName``, y ``getNearestSite``.
1786
- ``getRoot`` devuelve el objeto raiz físico.
1788
- ``getPath`` devuelve la ruta física al objeto como una cadena.
1790
- ``getName`` devuelve el último segmento a la ruta física.
1792
- ``getNearestSite`` devuelve el sitio en el que el objeto está
1793
contenido. Si el objeto es un sitio, devuelve el propio objeto.
1795
Si aprendes Zope 3, puedes ver que estas son las cosas importantes
1796
que necesistas a menudo. Para comprender la belleza de este sistema,
1797
debes ver cómo Zope 2 obtiene el objeto raíz físico realmente y
1798
cómo está implementado. Hay un método llamado ``getPhysicalRoot``
1799
prácticamente para todos los objetos contenedores.
1802
DefaultSized (TamañoPredeterminado)
1803
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1805
Situación: ``zope.size.DefaultSized``
1807
Este adaptador es sólo una implementación inicial para la interfaz
1808
``ISized``. Este adaptador se registra para todo tipo de objetos. Si
1809
quieres registrar este adaptador para una interfaz particular, tendrás
1810
que redefinir este registro para tu implementación.
1812
El registro del adaptador es así::
1837
1836
"""Returns a string giving the size.
1840
You can see another ``ISized`` adapter registered for ``IZPTPage`` in
1841
``zope.app.zptpage`` package.
1847
Location: ``zope.app.applicationcontrol.ZopeVersionUtility``
1849
This utility gives version of the running Zope.
1851
The registration goes like this::
1839
El método ``sizeForSorting`` devuelve una tupla (unidad_base, cantidad).
1840
Se utiliza para ordenar distintos tipos de objetos dimensionables.
1841
La cantidad tiene que ser ordenable entre cosas que compartan el mismo
1842
tipo de unidad base.
1844
El método ``sizeForDisplay`` devuelve una cadena que describe el tamaño.
1846
Puedes ver otro adaptador para ``ISized`` registrado para ``IZPTPage``
1847
en el paquete ``zope.app.zptpage``.
1850
ZopeVersionUtility (UtilidadVersionZope)
1851
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1853
Situación: ``zope.app.applicationcontrol.ZopeVersionUtility``
1855
Esta utilidad devuelve la versión del Zope que se está ejecutando.
1857
El registro es así::
1854
1860
component=".zopeversion.ZopeVersionUtility"
1855
1861
provides=".interfaces.IZopeVersion" />
1857
The interface provided, ``IZopeVersion``, has only one method named
1858
``getZopeVersion``. This method return a string containing the Zope
1859
version (possibly including SVN information).
1863
La interfaz que se ofrece, ``IZopeVersion``, sólo tiene un método
1864
llamado ``getZopeVersion``. Este método devuelve una cadena que
1865
contiene la versión de Zope (posíblemente incluyendo información
1861
The default implementation, ``ZopeVersionUtility``, get version info
1862
from a file ``version.txt`` in `zope/app` directory. If Zope is
1863
running from subversion checkout, it will show the latest revision
1864
number. If none of the above works it will set it to:
1865
`Development/Unknown`.
1868
La implementación predeterminada, ``ZopeVersionUtility``, obtiene
1869
la información de la versión a partir de un fichero ``version.txt``
1870
en el directorio `zope/app`. Si Zope se está ejecutando desde
1871
una copia local de subversion, mostrará el último número de revisión.
1872
Si ninguna de las opciones anteriores funciona devolverá la cadena:
1873
`Development/Unknown` (Desarrollo/Desconocido).