Google AppEngine: обработка формы «повторяется» StructuredProperty
Как мне работать сndb.StructuredProperty (repeat = True) свойства, когда дело доходит до проектирования их форм и обработчиков? Рассмотрим этот пример:
У меня есть 3 вида ndb.Model:SkilledPerson, егообразованиеи его (работа)Опыт, Последние два являются типами StructuredProperty 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()
Как бы я создал форму дляОпытный человек организация? Это будет отображать простые поля, такие какимя а такжерождение (StringProperty и DateProperty). Кроме того, он должен отображать «группу» полей дляобразование а такжеОпыт Свойства StructuredProperty. Я хотел бы представить форму, чтобы выглядеть примерно так:
<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>
Как включить в эту форму группы полей «Образование» и «Опыт»?
Примеробразование форма:
<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>