我们从Python开源项目中,提取了以下33个代码示例,用于说明如何使用google.appengine.ext.db.ListProperty()。
def decode_list_property(obj, prop, value): if value is None: return [] # there is an issue with large ints and ListProperty(int) AMF leaves # ints > amf3.MAX_29B_INT as floats db.ListProperty complains pretty # hard in this case so we try to work around the issue. if prop.item_type in (int, long): for i, x in enumerate(value): if isinstance(x, float): y = int(x) # only convert the type if there is no mantissa # otherwise let the chips fall where they may if x == y: value[i] = y return value
def convert_ListProperty(model, prop, kwargs): """Returns a form field for a ``db.ListProperty``.""" return None
def _GetModelTypeForListPropertyType(property_type): """Converts (supported) db.ListProperty type to db.Model type.""" from google.appengine.ext import db _LISTPROPERTY_TYPE_TO_SCHEMA_ENTRY = { basestring: db.StringProperty, str: db.StringProperty, unicode: db.StringProperty, bool: db.BooleanProperty, int: db.IntegerProperty, float: db.FloatProperty, db.Text: db.TextProperty, } return _LISTPROPERTY_TYPE_TO_SCHEMA_ENTRY.get(property_type, None)
def _model_to_prospective_search_schema(model, add_entry): """Produce SchemaEntries from db.Model class.""" from google.appengine.ext import db for name, model_property in model.properties().iteritems(): model_class = model_property.__class__ if issubclass(model_class, db.ListProperty): model_class = _GetModelTypeForListPropertyType(model_property.item_type) _add_schema_entry(model_class, name, add_entry)
def __init__(self,db,uri,pool_size=0,folder=None,db_codec ='UTF-8', credential_decoder=IDENTITY, driver_args={}, adapter_args={}, do_connect=True, after_connection=None): self.types.update({ 'boolean': gae.BooleanProperty, 'string': (lambda **kwargs: gae.StringProperty(multiline=True, **kwargs)), 'text': gae.TextProperty, 'json': gae.TextProperty, 'password': gae.StringProperty, 'blob': gae.BlobProperty, 'upload': gae.StringProperty, 'integer': gae.IntegerProperty, 'bigint': gae.IntegerProperty, 'float': gae.FloatProperty, 'double': gae.FloatProperty, 'decimal': GAEDecimalProperty, 'date': gae.DateProperty, 'time': gae.TimeProperty, 'datetime': gae.DateTimeProperty, 'id': None, 'reference': gae.IntegerProperty, 'list:string': (lambda **kwargs: gae.StringListProperty(default=None, **kwargs)), 'list:integer': (lambda **kwargs: gae.ListProperty(int,default=None, **kwargs)), 'list:reference': (lambda **kwargs: gae.ListProperty(int,default=None, **kwargs)), }) self.db = db self.uri = uri self.dbengine = 'google:datastore' self.folder = folder db['_lastsql'] = '' self.db_codec = 'UTF-8' self._after_connection = after_connection self.pool_size = 0 match = self.REGEX_NAMESPACE.match(uri) if match: namespace_manager.set_namespace(match.group('namespace'))