Google AppEngine: manejo de formularios 'repetido' StructuredProperty
Como trabajo conndb.StructuredProperty (repetido = Verdadero) ¿Propiedades a la hora de diseñar sus formas y manejadores? Considera este ejemplo:
Tengo 3 clases ndb.Model:Persona calificada, suEducación, y su (trabajo)Experiencia. Los dos últimos son tipos de propiedad estructurada de SkilledPerson.
class SkilledPerson(ndb.Model):
name = ndb.StringProperty()
birth = ndb.DateProperty()
education = ndb.StructuredProperty(Education, repeated = True)
experience = ndb.StructuredProperty(Experience, repeated = True)
class Education(ndb.Model):
institution = ndb.StringProperty()
certification = ndb.StringProperty()
start = ndb.DateProperty()
finish = ndb.DateProperty()
class Experience(ndb.Model):
job_title = ndb.StringProperty()
workplace = ndb.StringProperty()
start = ndb.DateProperty()
finish = ndb.DateProperty()
¿Cómo crearía un formulario para elPersona calificada ¿entidad? Mostraría campos simples comonombre ynacimiento (StringProperty y DateProperty). Además, debe mostrar un 'grupo' de campos para elEducación yExperiencia Propiedades de propiedad estructurada. Me imagino la forma de lucir algo así:
<form method="post">
<h2>Skilled Person Form</h2>
<label>Name<br>
<input type="text" name="name" value="{{name}}">
</label>
<label>Birth<br>
<input type="date" name="birth" value="{{birth}}">
</label>
<!-- Education form goes here -->
<!-- and Experience form goes here -->
<input type="submit">
</form>
¿Cómo incluyo los grupos de campos de Educación y Experiencia en este formulario?
Un ejemploEducación formar:
<form method="post">
<h2>Add Education</h2>
<label>Institution<br>
<input type="text" name="institution" value="{{institution}}">
</label>
<label>Certification<br>
<input type="text" name="certification" value="{{certification}}">
</label>
<label>Start<br>
<input type="date" name="start" value="{{start}}">
</label>
<label>Finish<br>
<input type="date" name="finish" value="{{finish}}">
</label>
<input type="submit">
</form>