or just let you be inspired from the update_or_insert method itself:
https://github.com/web2py/pydal/blob/70929a6dc03e6296c34944d2d232f257b78337d7/pydal/objects.py#L822
something like the following lines maybe will fit your needs:
def update_or_insert(self, _key=DEFAULT, **values):
if _key is DEFAULT:
record = self(**values)
elif isinstance(_key, dict):
record = self(**_key)
else:
record = self(_key)
if record:
record.update_record(**values)
newid = record.id # <- Here is the only code modification
you need
else:
newid = self.insert(**values)
return newid
for example you can define it and call it passing the table to update or
insert into as _first argument_
On 01/08/2018 17:20, Anthony wrote:
On Wednesday, August 1, 2018 at 6:46:09 AM UTC-4, Matthew J Watts wrote:
Hi all
I'm having the same problem, i'm trying to return an ID after an
'update_or_insert', but I need the ID whether it inserts or
updates to add as a forign key to a related table.
Yes, the workaround is simple -- don't use .update_or_insert(). It is
a simple function and you can easily replicate the logic on your own.
See https://stackoverflow.com/a/51634265/440323.
Anthony
--
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
<mailto: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.