Esempio n. 1
0
    def update_favorite_person(cls, user, person_id, method):
        person = Person.query.filter_by(id=person_id).one()

        dirty = False
        if method.lower() == 'post':
            if person not in user.favorite_people:
                user.favorite_people.append(person)
                dirty = True
        elif method.lower() == 'delete':
            if person.id in (p.id for p in user.favorite_people):
                user.favorite_people.remove(person)
                dirty = True

        if dirty:
            db_session.commit()

        return dirty
Esempio n. 2
0
    def update_favorite_keyword(cls, user, keyword, method):
        keyword = Keyword.query.filter_by(name=keyword).one()

        # XXX: is it safe to db_session.commit()?
        dirty = False
        if method.lower() == 'post':
            if keyword not in user.favorite_keywords:
                user.favorite_keywords.append(keyword)
                dirty = True
        elif method.lower() == 'delete':
            if keyword.id in (k.id for k in user.favorite_keywords):
                user.favorite_keywords.remove(keyword)
                dirty = True

        if dirty:
            db_session.commit()

        return dirty
Esempio n. 3
0
 def update_address(cls, user, region_id):
     user.address_id = region_id
     db_session.commit()