Pylons FormEncode con una matriz de elementos de formulario

Tengo una aplicación Pylons y estoy usando FormEncode y HtmlFill para manejar mis formularios. Tengo una variedad de campos de texto en mi plantilla (Mako)

  <tr>
    <td>Yardage</td>
    <td>${h.text('yardage[]', maxlength=3, size=3)}</td>
    <td>${h.text('yardage[]', maxlength=3, size=3)}</td>
    <td>${h.text('yardage[]', maxlength=3, size=3)}</td>
    <td>${h.text('yardage[]', maxlength=3, size=3)}</td>
    <td>${h.text('yardage[]', maxlength=3, size=3)}</td>
    <td>${h.text('yardage[]', maxlength=3, size=3)}</td>
    <td>${h.text('yardage[]', maxlength=3, size=3)}</td>
    <td>${h.text('yardage[]', maxlength=3, size=3)}</td>
    <td>${h.text('yardage[]', maxlength=3, size=3)}</td>
  </tr>

Sin embargo, parece que no puedo entender cómo validar estos campos. Aquí está la entrada relevante de mi Schema

yardage = formencode.ForEach(formencode.validators.Int())

Estoy intentando validar que cada uno de estos campos es un Int. Sin embargo, no se realiza ninguna validación para estos campos.

ACTUALIZA Según lo solicitado aquí, está el código para la acción de este controlador. Sé que estaba funcionando, ya que puedo validar otros campos de formulario.

    def submit(self):
        schema = CourseForm()
        try:
            c.form_result = schema.to_python(dict(request.params))
        except formencode.Invalid, error:
            c.form_result = error.value
            c.form_errors = error.error_dict or {}
            c.heading = 'Add a course'
            html = render('/derived/course/add.html')
            return htmlfill.render(
                html,
                defaults = c.form_result,
                errors = c.form_errors 
                )
        else:
            h.redirect_to(controler='course', action='view')

ACTUALIZA Se sugirió en IRC que cambie el nombre de los elementos deyardage[] ayardage Sin resultados. Todos deberían ser ints pero poner f en uno de los elementos no hace que sea inválido. Como dije antes, puedo validar otros campos de formulario. A continuación se muestra todo mi esquema.

import formencode

class CourseForm(formencode.Schema):
    allow_extra_fields = True
    filter_extra_fields = True
    name = formencode.validators.NotEmpty(messages={'empty': 'Name must not be empty'})
    par = formencode.ForEach(formencode.validators.Int())
    yardage = formencode.ForEach(formencode.validators.Int())

Respuestas a la pregunta(4)

Su respuesta a la pregunta