Ejemplo n.º 1
0
    def save(self):
        """ update model attribute change """
        attributes = self._arrangeAttributes()

        if len(self.origin_attributes):
            QueryBuilder(self).where("id", self.origin_id).update(attributes)

            return self.find(self.origin_id)

        return self.insert(attributes)
Ejemplo n.º 2
0
 def where(cls, field, *args, **kw):
     """ new QueryBuilder and .where """
     return QueryBuilder(cls).where(field, *args, **kw)
Ejemplo n.º 3
0
 def select(cls, *fields):
     """ select """
     return QueryBuilder(cls).select(*fields)
Ejemplo n.º 4
0
 def find(cls, data_id):
     """ get the id data """
     return QueryBuilder(cls).where('id', data_id).first()
Ejemplo n.º 5
0
 def insert(cls, data):
     """ insert data """
     return QueryBuilder(cls).insert(data)
Ejemplo n.º 6
0
 def update(cls, data):
     """ update data """
     return QueryBuilder(cls).update(data)
Ejemplo n.º 7
0
 def first(cls):
     """ get first data """
     return ResaultBuilder.query(QueryBuilder(cls).limit(1), few=False)
Ejemplo n.º 8
0
 def all(cls):
     """ get all data """
     return QueryBuilder(cls).get()
Ejemplo n.º 9
0
    def delete(self):
        """ delete this model data """
        if self.origin_id == 0:
            raise AttributeError("Instance have not attribute 'ID'")

        return QueryBuilder(self).where("id", self.origin_id).delete()
Ejemplo n.º 10
0
 def has(cls, field, *args, **kw):
     """ check has """
     return QueryBuilder(cls).where(field, *args, **kw).has()