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.

Reply via email to