Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google app engine 如何验证Blobstore文件记录是否已存在?_Google App Engine_Blobstore - Fatal编程技术网

Google app engine 如何验证Blobstore文件记录是否已存在?

Google app engine 如何验证Blobstore文件记录是否已存在?,google-app-engine,blobstore,Google App Engine,Blobstore,看起来get\u file\u name(blob\u键)可以根据使用。但这是在我知道blob_键的情况下(实际上,我知道它,但这是对数据存储的附加请求) 我想确认同一个文件没有第二次添加到Blobstore。文件名是唯一的。那么,我可以按文件名检查记录的存在吗?否您不能检查文件名。每次创建或加载具有相同名称的文件到blobstore时,都会使用相同的名称添加该文件,但会添加一个新的blob_密钥 下面是一些删除blob旧版本的代码 ..... code to create a new blob

看起来
get\u file\u name(blob\u键)
可以根据使用。但这是在我知道blob_键的情况下(实际上,我知道它,但这是对数据存储的附加请求)


我想确认同一个文件没有第二次添加到Blobstore。文件名是唯一的。那么,我可以按文件名检查记录的存在吗?

否您不能检查文件名。每次创建或加载具有相同名称的文件到blobstore时,都会使用相同的名称添加该文件,但会添加一个新的blob_密钥

下面是一些删除blob旧版本的代码

..... code to create a new blob with filename = name
files.finalize(f_name)                                   # finalize the new blob                        
blob_key = files.blobstore.get_blob_key(f_name)          # get the blob_key of the newly saved blob
blobs = blobstore.BlobInfo.gql("WHERE filename = '%s'" %(name))                            
for blob in blobs :
    if blob.key() != blob_key : blob.delete()            # delete old versions of the blob