2011-05-01 2 views
4

Хо, я делаю, что Genshi анализирует выход шаблона соответствия?Вложенные шаблоны матча Genshi

Другими словами:

У меня есть шаблон, как это в Genshi:

<py:match path="gm:field"> 
    Something ${select('@label')}<br /> 
    ${select('*')} 
    Something else<br /> 
</py:match> 

При использовании непосредственно:

<gm:field label="HERE"> 
    <b>Try this!</b> 
</gm:field> 

работает отлично:

Something HERE<br /> 
<b>Try this!</b> 
Something else<br /> 

Но когда я пытаюсь определить еще один, который делегирует ему:

<py:match path="gm:input"> 
    <gm:field label="${select('@label')}"> 
     <input name="${select('@label')}" /> 
    </gm:field> 
</py:match> 

и называют его:

<gm:input label="x"> 
    <input type="passwd" /> 
</gm:input> 

В результате я вижу в браузере:

<gm:field label="x"> 
    <input label="x" /> 
</gm:field> 

вместо:

Something x<br /> 
<input label="x" /> 
Something else<br /> 

который я хотел бы видеть ...

Я использую Genshi 0.5.1 ..

ответ

0

Изучив исходный код, я считаю, что этого не может быть сделано. Видимо, вложенные шаблоны совпадений не поддерживаются.