Заполните форму на одной странице разными классами - запишите в БД и выведите значения - PullRequest
0 голосов
/ 15 августа 2010

У меня есть модель с 5 объектами, и я собираюсь создать форму (на той же странице), но не знаю, как интегрировать более одной формы.

В основном, я могу очень хорошо играть с формами и писать в базу данных, но мне нужно разместить больше полей на странице. Эти поля имеют разные модели. ** Мои модели: Учитель, Аккаунт (ReferenceProperty), Опыт (ReferenceProperty), Распределение услуг (ReferenceProperty), Опыт (ReferenceProperty)

Мои формы:

  class TeacherForm(djangoforms.ModelForm):
    class Meta:
        model =models.Teacher
        exclude = ['user']

и то же для других моделей

My Main:

class CreateCvHandler(webapp.RequestHandler):
    def post(self):
        if self.request.get('EscTeacher'):
            id = int(self.request.get('EscTeacher'))
            teacher=models.teacher.get(db.Key.from_path('Teacher', id))
        else:
            teacher= models.teacher()

        data = forms.TeacherForm(data = self.request.POST)
        if data.is_valid():

            userList= models.Account.all()
            userList.filter('user =', users.get_current_user())

            for user in userList:
                teacher.user=user.key()
            teacher.unity=self.request.get('unity')
            teacher.category=self.request.get('category')
            teacher.regime=self.request.get('regime')


            teacher.put()
            self.redirect('/academy')
        else:
            self.redirect('/createCv')**

Помогите, пожалуйста ...

1 Ответ

1 голос
/ 17 августа 2010

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

Вот ссылка на ответ на вопрос, аналогичный тому, который вы задали .. Django:несколько моделей в одном шаблоне с использованием форм

...