我们从Python开源项目中,提取了以下25个代码示例,用于说明如何使用google.appengine.ext.db.BlobProperty()。
def convert_BlobProperty(model, prop, kwargs): """Returns a form field for a ``db.BlobProperty``.""" return f.FileField(**kwargs)
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'))
def __init__(self, *args, **kwargs): super(BlobProperty, self).__init__(*args, **kwargs) self.form_value = None
def get_form_field(self, **kwargs): """Return a Django form field appropriate for a blob property. This defaults to a forms.FileField instance when using Django 0.97 or later. For 0.96 this returns None, as file uploads are not really supported in that version. """ if not hasattr(forms, 'FileField'): return None defaults = {'form_class': forms.FileField} defaults.update(kwargs) return super(BlobProperty, self).get_form_field(**defaults)
def make_value_from_form(self, value): """Convert a form value to a property value. This extracts the content from the UploadedFile instance returned by the FileField instance. """ if have_uploadedfile and isinstance(value, uploadedfile.UploadedFile): if not self.form_value: self.form_value = value.read() b = db.Blob(self.form_value) return b return super(BlobProperty, self).make_value_from_form(value)