Hi Manuele Thanks for your feedback, i've got it sorted now Anthony kindly helped me with the code. I'm still adding some things. But i'll upload the final code once i'm done!
On Wed, Aug 8, 2018 at 9:46 AM, Manuele Pesenti <[email protected]> wrote: > or just let you be inspired from the update_or_insert method itself: > > https://github.com/web2py/pydal/blob/70929a6dc03e6296c34944d2d232f2 > 57b78337d7/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 [email protected]. > 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 a topic in the > Google Groups "web2py-users" group. > To unsubscribe from this topic, visit https://groups.google.com/d/ > topic/web2py/vjU9sYCoxU0/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > [email protected]. > 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 [email protected]. For more options, visit https://groups.google.com/d/optout.

