[ZF-10089] Zend_Log
[zend.git] / documentation / manual / es / module_specs / Zend_Dojo-Form.xml
blob861e6784e49b42bef074975e89b3cd067e0fa529
1 <?xml version="1.0" encoding="UTF-8"?>
2     <!-- EN-Revision: 17166 -->
3     <!-- Reviewed: no -->
4 <sect1 id="zend.dojo.form" xmlns:xi="http://www.w3.org/2001/XInclude">
5     <title>Elementos y Decoradores de Dojo Form</title>
7     <para>
8         Sobre la base de los ayudantes de vista dijit
9         <link linkend="zend.dojo.view.dijit"/>
10         , la familia de clases
11         <classname>Zend_Dojo_Form</classname>
12         ofrece la posibilidad de
13         utilizar Dijits nativamente en sus formularios.
14     </para>
16     <para>Hay tres opciones para utilizar los elementos de Dojo form con sus
17         formularios:</para>
19     <itemizedlist>
20         <listitem>
21             <para>
22                 Use
23                 <methodname>Zend_Dojo::enableForm()</methodname>
24                 . Esto le
25                 permitirá añadir recursivamente paths de plugins para
26                 decoradores y
27                 elementos de todos los items de forms adjuntos.
28                 Además, el objeto vista será
29                 habilitado para Dojo. Note, sin
30                 embargo, que cualquier subformulario que agregue
31                 <emphasis>después</emphasis>
32                 de esta llamada también tendrá
33                 que ser pasado mediante
34                 <methodname>Zend_Dojo::enableForm()</methodname>
35                 .
36             </para>
37         </listitem>
39         <listitem>
40             <para>
41                 Utilice las implementaciones específicas de Dojo para
42                 formularios y subformularios,
43                 <classname>Zend_Dojo_Form</classname>
44                 y
45                 <classname>Zend_Dojo_Form_SubForm</classname>
46                 respectivamente. Éstas pueden utilizarse como reemplazantes
47                 drop-in para
48                 <classname>Zend_Form</classname>
49                 y
50                 <classname>Zend_Form_SubForm</classname>
51                 , contener todos los
52                 paths apropiados de los decoradores y elementos, establecer una
53                 clase DisplayGroup por defecto específica, y habilitar la vista
54                 para Dojo.
55             </para>
56         </listitem>
58         <listitem>
59             <para>
60                 Por último, y lo más tedioso, puede establecer por sí mismo
61                 el path apropiado para el
62                 decorador y para el elemento,
63                 establecer por defecto la clase DisplayGroup, y
64                 habilitar la
65                 vista para Dojo. Dado que
66                 <methodname>Zend_Dojo::enableForm()</methodname>
67                 ya hizo
68                 esto, hay pocas razones para seguir esta vía.
69             </para>
70         </listitem>
71     </itemizedlist>
73     <example id="zend.dojo.form.enable">
74         <title>Habilitando Dojo en sus formularios existentes</title>
76         <para>
77             "Pero espere", podría decir; "Ya extendí
78             <classname>Zend_Form</classname>
79             con mi propia clase
80             personalizada de form! ¿Cómo puede habilitarlo para Dojo?"
81         </para>
83         <para>
84             En primer lugar, y lo más fácil, simplemente cambie de extender
85             <classname>Zend_Form</classname>
86             a extender
87             <classname>Zend_Dojo_Form</classname>
88             , y actualizar todos los
89             lugares donde se instancie a
90             <classname>Zend_Form_SubForm</classname>
91             para instanciar a
92             <classname>Zend_Dojo_Form_SubForm</classname>
93             .
94         </para>
96         <para>
97             Un segundo enfoque es llamar al método
98             <methodname>init()</methodname>
99             dentro de sus forms
100             personalizados
101             <methodname>Zend_Dojo::enableForm()</methodname>
102             .
103             Cuando la definición del formulario está completa, mediante un loop
104             habilite todos los
105             SubForms de Dojo:
106         </para>
108         <programlisting language="php"><![CDATA[
109 class My_Form_Custom extends Zend_Form
111     public function init()
112     {
113         // Dojo habilita el form:
114         Zend_Dojo::enableForm($this);
116         // ... continuar con la definición del form desde aquí
118         // Dojo habilita todos los sub forms:
119         foreach ($this->getSubForms() as $subForm) {
120             Zend_Dojo::enableForm($subForm);
121         }
122     }
124 ]]></programlisting>
125     </example>
127     <para>El uso de los decoradores y elementos específicos de dijit form es
128         como usar cualquier otro
129         decorador o elemento de formularios.</para>
131     <xi:include href="Zend_Dojo-Form-Decorators.xml"/>
132     <xi:include href="Zend_Dojo-Form-Elements.xml"/>
133     <xi:include href="Zend_Dojo-Form-Examples.xml"/>
134 </sect1>