On Friday, December 30, 2011 11:25:51 AM UTC-5, Massimo Di Pierro wrote:
>
> You have to do: 
>
> db.define_table('name',...,migrate=settings.migrate) 
>
> The table has to be defined because web2py needs to know how to map 
> SQL types into web2py types. The migrate argument, when set to False, 
> will prevent the "CREATE TABLE". Anyway, web2py does not "CREATE 
> TABLE" if it exists already.
>

Looks like create_table is called regardless of migrate on GAE:

if migrate or self._adapter.dbengine=='google:datastore':
    try:
        sql_locker.acquire()
        self._adapter.create_table(t,migrate=migrate,
                                   fake_migrate=fake_migrate,
                                   polymodel=polymodel)

GoogleDatastoreAdapter.create_table() itself doesn't seem to do anything 
with 'migrate', but not clear if it results in any datastore activity. 
Looks like it just creates a gae.Model object:

if not polymodel:
    table._tableobj = classobj(table._tablename, (gae.Model, ), myfields)

Anthony

 

Reply via email to