Exemplo n.º 1
0
 def persist_entity(self, obj, table_name, columns):
     args_values=map(lambda x: obj.__getattribute__(x), columns)
     set_string = " SET " + ( ", ".join( map(lambda x: x + '=%s', columns) ) )
     if hasattr(obj, 'id'):
         args_values.append(obj.id)
         db.execute("UPDATE " + table_name + set_string +" WHERE id = %s", *args_values)
     else:
         obj.id = db.execute_lastrowid("INSERT INTO " + table_name + set_string, *args_values)
Exemplo n.º 2
0
    def persist_contact(self, contact):
        if contact.is_canceled:
            db.execute("DELETE FROM " + CONTACT_TABLE_NAME  +" WHERE id = %s", contact.id)
            return
        if not contact.is_active:
            contact.game.add_used_word(contact.word)

        if contact.is_accepted:
            contact.connected_user_id = contact.connected_user.id
        else:
            contact.connected_user_id = None

        contact.author_id = contact.author.id
        contact.game_id = contact.game.id

        columns = ('game_id', 'word', 'description', 'author_id', 'connected_user_id', 'connected_word', 'connected_at', 'is_active', 'is_successful', 'created_at')

        self.persist_entity(contact, CONTACT_TABLE_NAME, columns)