[Twisted-web] Re: [Twisted-Python] again on nested sequence

Manlio Perillo manlio_perillo at libero.it
Mon Jul 17 12:18:13 CDT 2006


Manlio Perillo ha scritto:
> [...]
> 
> <!DOCTYPE html
>   PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
>   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
> <html xmlns="http://www.w3.org/1999/xhtml"
>       xmlns:n="http://nevow.com/ns/nevow/0.1"
>       lang="it" xml:lang="it">
>   <head>
>     <title>Nested sequence II</title>
>   </head>
>   <body>
>     <form action="post" method="post">
>       <ul n:render="sequence" n:data="control_list">
>         <li n:pattern="item" n:render="control">
>           <label><n:slot name="ctrl_label"/>
>             <select n:render="option_list">
>               <n:attr name="name"><n:slot name="ctrl_name" /></n:attr>
>               <option n:pattern="item" n:render="option">
>                   <n:attr name="value"><n:slot name="opt_value" /></n:attr>
>                   <n:slot name="opt_label" />
>                 </option>
>             </select>
>           </label>
>         </li>
>       </ul>
>       <input type="submit" value="send" />
>     </form>
>   </body>
> </html>
> 
> 
> class Main(rend.Page):
>     addSlash = True
>     docFactory = loaders.xmlfile('nestedsequence.xhtml')
> 
>     def data_control_list(self, ctx, data):
>         return [('a', 'first'),  ('b', 'second')]
> 
>     def render_option_list(self, ctx, data):
>         option_list = [('1', 'uno'), ('2', 'due')]
>         tag = ctx.tag
> 
>         pattern = inevow.IQ(ctx).patternGenerator("item")
>         content = [pattern(data=option) for option in option_list]
> 
>         return ctx.tag.clear()[content]
> 
>     def render_control(self, ctx, data):
>         print '*', data
>         ctx.fillSlots('ctrl_label', data[1])
>         ctx.fillSlots('ctrl_name', data[0])
> 
>         return ctx.tag
> 


This is very strange.
In my real application (that should be equivalent to this one, only
names changes), the whole <option> node is ignored!

I can't understand why.


Thanks and regards  Manlio Perillo



More information about the Twisted-web mailing list