Шаблоны вложенных совпадений Genshi

#templates #nested #match #genshi

#шаблоны #вложенные #совпадение #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..

Ответ №1:

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