Every Blobstore value has a corresponding entity in the datastore containing information about the blob, such as its filename and size. The BlobInfo class provides a
         
          
           db.Model
          
         
         -like
interface to this read-only entity. You can retrieve BlobInfo objects using a Blobstore key.
        
         
          BlobInfo
         
         is provided by the
         
          google.appengine.ext.blobstore
         
         module.
        
- Introduction
 - Class methods:
 - Instance methods:
 - Instance properties:
 
Introduction
Every Blobstore value has a corresponding BlobInfo entity in the datastore that contains information about the blob, such as its filename and size. The Blobstore creates this entity when the blob is uploaded. Unlike other datastore entities, BlobInfo entities are read-only, and cannot be modified by the application.
An application can query for BlobInfo entities by their properties, and can fetch an entity using the Blobstore key. Note that a query over multiple properties on a BlobInfo entity may require a custom index, just as with other entities.
         When a blob is uploaded, the Blobstore passes the metadata to the upload handler in the headers of the MIME part for the file. The upload handler can parse this information into a BlobInfo object without calling the datastore using the
         
          
           parse_blob_info()
          
         
         function. If you're using the webapp or webapp2 application framework, you can
use the
         
          
           BlobstoreUploadHandler
          
         
         for more convenient parsing of this information.
        
Class Methods
The BlobInfo class has the following class methods:
- BlobInfo.all ()
 - 
          
Returns a
Queryobject that represents all BlobInfo entities for the application. Methods on the Query object can apply filters and sort orders to the query before it is executed. SeeQueryfor more information. - BlobInfo.get ( blob_keys )
 - 
          
Gets the BlobInfo object (or objects) for the given
BlobKeyobjects.Arguments
- blob_keys
 - 
            A
            
BlobKeyvalue, or a list ofBlobKeyvalues. 
If given a single
BlobKey, returns aBlobInfoobject, orNoneif there is no Blobstore value for that key. If given a list ofBlobKeyvalues, returns a list with one value for each given key, each of which is either aBlobKeyorNone. - BlobInfo.gql ( query_string , * args , ** kwds )
 - 
          
Performs a GQL query over
BlobInfoentities.Arguments
- query_string
 - 
            The part of the GQL query following
            
SELECT * FROM model(which is implied by using this class method). - * args
 - 
            Positional parameter bindings, similar to the
            
GqlQueryconstructor. - ** kwds
 - 
            Keyword parameter bindings, similar to the
            
GqlQueryconstructor. 
The return value is a
GqlQueryobject, which can be used to access the results. - BlobInfo.kind ()
 - 
          Returns the kind name used for
          
BlobInfoentities. - BlobInfo.properties ()
 - 
          Returns a dictionary of all of the properties defined for
          
BlobInfoentities. 
Instance Methods
A BlobInfo instance has the following methods:
- delete ()
 - 
          
Deletes the Blobstore value represented by this BlobInfo object, and also deletes the corresponding BlobInfo entity from the datastore.
Deleting a Blobstore value occurs separately from datastore transactions. If you call this method during a datastore transaction, it takes effect immediately, regardless of whether the transaction commits successfully or is retried.
 - key ()
 - 
          
Returns the
BlobKeyof the Blobstore value described by thisBlobInfo. - open ()
 - 
          
Returns a
BlobReaderfor this blob. 
Instance Properties
         A
         
          BlobInfo
         
         instance has several properties.
   These properties are present on the
         
          BlobInfo
         
         Datastore
   entity, and can be the subject of queries via the
         
          
           BlobInfo.all()
          
         
         and
         
          
           BlobInfo.gql
          
         
         ()