У меня есть модель с полем участников, как показано ниже:
class Team(db.Model):
--- some fields ---
members = ListProperty(db.Key) # Using App Engine datastore as backend.
Я использую Flask-WTFforms для создания формы с использованием этой модели. При создании новой команды пользователь выберет некоторых участников в форме и сохранит ее. Пользователь также может редактировать форму команды и вносить изменения в поле участников (может добавлять или удалять участников). Я хотел проверить, сколько участников добавлено или удалено, сравнив его с предыдущими данными, хранящимися в поле участников. То же самое относится и к другим полям.
Я использовал сеансы для достижения этого:
def edit_team (ключ):
k = db.Key(key)
team = db.get(k)
form = TeamForm(obj = team)
if not form.is_submitted(): # Indicates GET request
session[str(g.user.user_id() + 'prev_members'] = form.members.data
if form.validate_on_submit():
form.populate_obj(project)
# I will use session data with new form.members.data to do further processing.
Это правильный способ справиться с этим сценарием? Спасибо за любую помощь..