That's for sure! His stack exchange posts really helped me get around some problems early on... and now :-) I should pray for a special blessing for him tomorrow 🙏
On Fri, 17 Jul 2020, 9:05 pm villas, <villa...@gmail.com> wrote: > That's great Andrew. > BTW great to see that Anthony is helping - he is someone who really knows > the nuts and bolts of web2py! > > > > On Friday, 17 July 2020 08:05:40 UTC+1, Andrew Rogers wrote: >> >> Thanks for your response Villas. My reason for this approach is that i >> have a lot of code that expects a table object and i am trying to avoid >> having to modify it to handle the a different format. >> >> Anthony on Stack Exchange found my error. He said: >> "You probably also set DAL(..., lazy_tables=True), in which >> case, db.define_table() returns None rather than a Table object, as the >> table is not actually created until first accessed via db.tablename. >> >> Given your code, there is no benefit to setting lazy_tables=True, as all >> tables are accessed (and therefore created) immediately after definition >> anyway." >> >> On Thursday, 16 July 2020 at 03:43:40 UTC+10 villas wrote: >> >>> You don't mention... >>> >>> - Which DB adapter you are using >>> - Why just one of your tables is expected to be an in-memory table >>> and the others not >>> - Why you don't simply maintain the list of tables in a list(), or >>> dict() or some other in-memory structure >>> >>> In any case, maybe this idea might help... >>> >>> db = DAL("sqlite://storage.sqlite") # or whichever DB you are using >>> dbmemo = DAL("sqlite:memory") >>> >>> dbmemo.define_table('DatabaseModel', Field('TableName')) >>> >>> for t in db.tables: >>> dbmemo.DatabaseModel.update_or_insert(TableName=t) >>> >>> >>> On Wednesday, 15 July 2020 07:45:36 UTC+1, Andrew Rogers wrote: >>>> >>>> This code working fine but now it fails because the db.define_table() >>>> returns None. >>>> >>>> table = db.define_table('DatabaseModel', Field('TableName')) # This >>>> is not working now >>>> for t in db.tables: >>>> table.update_or_insert(TableName=t) >>>> >>>> The only thing that I think I have changed that might have affected it >>>> was setting migrate = false in appconfig.ini. I have changed it back >>>> but to no avail. >>>> >>>> What could stop db.define_table from returning a table? >>>> >>>> (I am using this to create an in-memory table which I populate with a >>>> list of actual tables.) >>>> >>>> Thanks. >>>> >>>> PS: >>>> https://stackoverflow.com/questions/62908908/under-what-circumstances-would-db-define-table-return-none >>>> >>> -- > 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. > To view this discussion on the web visit > https://groups.google.com/d/msgid/web2py/b3dcebaa-7aee-4e25-ab8f-fea7b28b86c5o%40googlegroups.com > <https://groups.google.com/d/msgid/web2py/b3dcebaa-7aee-4e25-ab8f-fea7b28b86c5o%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/web2py/CACWMBMN7Ld%3DvNKM2T4WSfr3%2BPsepPyh5PB19DRB_x%3DGSDfyJcA%40mail.gmail.com.