You can delete row this way!! db((db.table.id==id_s)&(db.table.created_by == auth.user.id)).delete() if you want delete rows upto a certain limit so you can you put this quarry under for loop. Best,
On Sun, Jul 22, 2018 at 4:43 PM Maurice Waka <mauricew...@gmail.com> wrote: > I have tried this example but I get this error below: > > > db(query).delete() > File "/usr/local/lib/python2.7/dist-packages/pydal/objects.py", line 2277, > in delete > ret = db._adapter.delete(table, self.query) > File "/usr/local/lib/python2.7/dist-packages/pydal/adapters/sqlite.py", line > 86, in delete > deleted = [x[table._id.name] for x in db(query).select(table._id)] > File "/usr/local/lib/python2.7/dist-packages/pydal/objects.py", line 2250, > in select > return adapter.select(self.query, fields, attributes) > File "/usr/local/lib/python2.7/dist-packages/pydal/adapters/sqlite.py", line > 82, in select > return super(SQLite, self).select(query, fields, attributes) > File "/usr/local/lib/python2.7/dist-packages/pydal/adapters/base.py", line > 757, in select > colnames, sql = self._select_wcols(query, fields, **attributes) > File "/usr/local/lib/python2.7/dist-packages/pydal/adapters/base.py", line > 672, in _select_wcols > query = self.expand(query, query_env=query_env) > File "/usr/local/lib/python2.7/dist-packages/pydal/adapters/base.py", line > 434, in _expand > rv = op(first, second, **optional_args) > File "/usr/local/lib/python2.7/dist-packages/pydal/dialects/base.py", line > 228, in _and > self.expand(second, query_env=query_env)) > File "/usr/local/lib/python2.7/dist-packages/pydal/dialects/__init__.py", > line 96, in expand > return self.adapter.expand(*args, **kwargs) > File "/usr/local/lib/python2.7/dist-packages/pydal/adapters/base.py", line > 453, in _expand > return str(rv) > File "/usr/local/lib/python2.7/dist-packages/pydal/objects.py", line 2090, > in __repr__ > return '<Set %s>' % str(self.query) > File "/usr/local/lib/python2.7/dist-packages/pydal/objects.py", line 1963, > in __str__ > return str(self.db._adapter.expand(self)) > File "/usr/local/lib/python2.7/dist-packages/pydal/adapters/base.py", line > 434, in _expand > rv = op(first, second, **optional_args) > File "/usr/local/lib/python2.7/dist-packages/pydal/dialects/base.py", line > 344, in eq > self.expand(second, first.type, query_env=query_env)) > File "/usr/local/lib/python2.7/dist-packages/pydal/dialects/__init__.py", > line 96, in expand > return self.adapter.expand(*args, **kwargs) > File "/usr/local/lib/python2.7/dist-packages/pydal/adapters/base.py", line > 444, in _expand > rv = self.represent(expression, field_type) > File "/usr/local/lib/python2.7/dist-packages/pydal/adapters/base.py", line > 381, in represent > return super(SQLAdapter, self).represent(obj, field_type) > File "/usr/local/lib/python2.7/dist-packages/pydal/adapters/base.py", line > 334, in represent > obj = obj() > TypeError: id() takes exactly one argument (0 given) > > Issues: > > 1. What could be wrong. > > 2. Is there a way of following this example but deleting rows upto a certain > limit, say anything above 50 like in this example: > > DELETE FROM post WHERE id IN(SELECT id FROM post ORDER BY id LIMIT 50 ASC) > > > On Sunday, October 15, 2017 at 4:03:12 AM UTC+3, 黄祥 wrote: >> >> think you can do it by store the user created id (auth.signature or code >> it by your self) in your table and use it as a condition >> *e.g. not tested* >> query = ((db.table.id == id) & (db.table.created_by == auth.user_id) ) >> db(query).delete() >> >> best regards, >> stifan >> >>> -- > Resources: > - http://web2py.com > - http://web2py.com/book (Documentation) > - http://github.com/web2py/web2py (Source code) > - https://code.google.com/p/web2py/issues/list (Report Issues) > --- > You received this message because you are subscribed to the Google Groups > "web2py-users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to web2py+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.