def get(self, id): try: args = (self.config['TABLE'], id) self.cursor.execute('''SELECT * FROM %s WHERE id = %s''' % args) row = self.cursor.fetchone() if row is not None: doc = Document(**row) doc.users = row[5].split(',') doc.usersdel = row[6].split(',') else: doc = None except Exception as e: DatabaseException(e) else: return doc
def get_docs_for_commit(self): docs = [] try: self.cursor.execute('''SELECT * FROM %s WHERE synched = 0 ''' % (self.config['TABLE'])) rows = self.cursor.fetchall() for row in rows: doc = Document(**row) doc.users = row[5].split(',') doc.usersdel = row[6].split(',') docs.append(doc.to_dict()) except Exception as e: DatabaseException(e) else: return docs
def search(self, search_text): docs = [] try: if (search_text is not None) and (not search_text == ''): self.cursor.execute('''SELECT * FROM %s WHERE keys LIKE '%s' ''' % (self.config['TABLE'], '%' + search_text + '%')) rows = self.cursor.fetchall() for row in rows: doc = Document(**row) doc.users = row[5].split(',') doc.usersdel = row[6].split(',') docs.append(doc) except Exception as e: DatabaseException(e) else: return docs