Пример #1
0
 def test_update(self):
     iq = InsertQuery(Blog, title='a').execute()
     
     uq = UpdateQuery(Blog, title='A').where(id=1)
     self.assertEqual(uq.sql(), ('UPDATE blog SET title=? WHERE id = ?', ['A', 1]))
     self.assertEqual(uq.execute(), 1)
     
     iq2 = InsertQuery(Blog, title='b').execute()
     
     uq = UpdateQuery(Blog, title='B').where(id=2)
     self.assertEqual(uq.sql(), ('UPDATE blog SET title=? WHERE id = ?', ['B', 2]))
     self.assertEqual(uq.execute(), 1)
     
     sq = SelectQuery(Blog).order_by('id')
     self.assertEqual([x.title for x in sq], ['A', 'B'])
Пример #2
0
    def test_update_with_q(self):
        uq = UpdateQuery(Blog, title='A').where(Q(id=1))
        self.assertEqual(uq.sql(),
                         ('UPDATE blog SET title=? WHERE id = ?', ['A', 1]))

        uq = UpdateQuery(Blog, title='A').where(Q(id=1) | Q(id=3))
        self.assertEqual(
            uq.sql(),
            ('UPDATE blog SET title=? WHERE (id = ? OR id = ?)', ['A', 1, 3]))
Пример #3
0
 def __set__(self, instance, value):
     mtv = instance._meta.db_table
     miv = instance.get_id()
     if isinstance(value, SelectQuery) and value.model_class == self.model_class:
         uq = UpdateQuery(self.model_class, {
             self.model_type_field: mtv,
             self.model_id_field: miv,
         }).where(value._where).execute()
     elif all(map(lambda i: isinstance(i, self.model_class), value)):
         for obj in value:
             setattr(obj, self.model_type_field.name, mtv)
             setattr(obj, self.model_id_field.name, miv)
             obj.save()
     else:
         raise ValueError('ReverseGFK field unable to handle "%s"' % value)
Пример #4
0
    def test_update(self):
        iq = InsertQuery(Blog, title="a").execute()

        uq = UpdateQuery(Blog, title="A").where(id=1)
        self.assertEqual(uq.sql(), ("UPDATE blog SET title=? WHERE id = ?", ["A", 1]))
        self.assertEqual(uq.execute(), 1)

        iq2 = InsertQuery(Blog, title="b").execute()

        uq = UpdateQuery(Blog, title="B").where(id=2)
        self.assertEqual(uq.sql(), ("UPDATE blog SET title=? WHERE id = ?", ["B", 2]))
        self.assertEqual(uq.execute(), 1)

        sq = SelectQuery(Blog).order_by("id")
        self.assertEqual([x.title for x in sq], ["A", "B"])
Пример #5
0
 def test_update(self):
     iq = InsertQuery(Blog, title='a').execute()
     
     uq = UpdateQuery(Blog, title='A').where(id=1)
     self.assertEqual(uq.sql(), ('UPDATE blog SET title=? WHERE id = ?', ['A', 1]))
     self.assertEqual(uq.execute(), 1)
     
     iq2 = InsertQuery(Blog, title='b').execute()
     
     uq = UpdateQuery(Blog, title='B').where(id=2)
     self.assertEqual(uq.sql(), ('UPDATE blog SET title=? WHERE id = ?', ['B', 2]))
     self.assertEqual(uq.execute(), 1)
     
     sq = SelectQuery(Blog).order_by('id')
     self.assertEqual([x.title for x in sq], ['A', 'B'])
Пример #6
0
    def test_update_with_q(self):
        uq = UpdateQuery(Blog, title="A").where(Q(id=1))
        self.assertEqual(uq.sql(), ("UPDATE blog SET title=? WHERE id = ?", ["A", 1]))

        uq = UpdateQuery(Blog, title="A").where(Q(id=1) | Q(id=3))
        self.assertEqual(uq.sql(), ("UPDATE blog SET title=? WHERE (id = ? OR id = ?)", ["A", 1, 3]))
Пример #7
0
    def __init__(self, *args, **kwargs):
        BaseUpdateQuery.__init__(self, *args, **kwargs)
        gen.Future.__init__(self)

        self._future = None
Пример #8
0
 def test_update_with_q(self):
     uq = UpdateQuery(Blog, title='A').where(Q(id=1))
     self.assertEqual(uq.sql(), ('UPDATE blog SET title=? WHERE id = ?', ['A', 1]))
     
     uq = UpdateQuery(Blog, title='A').where(Q(id=1) | Q(id=3))
     self.assertEqual(uq.sql(), ('UPDATE blog SET title=? WHERE (id = ? OR id = ?)', ['A', 1, 3]))