Source code for tic.development.labs.migration
from tic.development.admin.api import IAdminCommandProvider
from tic.core import Component, implements
from google.appengine.api import datastore
from google.appengine.api import datastore_errors
[docs]class TestMigrationCommand(Component):
implements(IAdminCommandProvider)
[docs] def get_admin_commands(self):
"""
"""
#(command, args, help, complete, execute)
command = "migrate"
args = None
help = """test`ing API."""
complete = None
execute = self._execute
return ((command, args, help, complete, execute), )
def _execute(self, args=None):
print "sweet"
#set up datastore
from tic.development.appengine.server.test import setup_local_datastore_service
setup_local_datastore_service()
# m = models.Make()
# m.name = "asdfghjk"
# m.put()
#
#
# a = datastore.Query('Make').Get(1)
# print dir(a[0])
# print a[0].name
[docs]def get_entities(keys):
rpc = datastore.GetRpcFromKwargs({})
keys, multiple = datastore.NormalizeAndTypeCheckKeys(keys)
entities = None
try:
entities = datastore.Get(keys, rpc=rpc)
except datastore_errors.EntityNotFoundError:
assert not multiple
return entities
[docs]def put_entities(entities):
rpc = datastore.GetRpcFromKwargs({})
keys = datastore.Put(entities, rpc=rpc)
return keys
[docs]class Migrate(object):
# model = models.Car
[docs] def list_date(self, value):
"""
value: old value
returns: new value
"""
return value
[docs] def run(self):
"""Runs the schema
"""