私はappengineでdjangoアプリケーションを起動して実行しており、ユーザーがアップロードしたときにファイルを作成しています。私が持っている問題は、それらを削除する方法を見つけることです。それらを作成するための私のコードは、次のようになります。Google Cloud Storageからファイルを削除する
from google.appengine.api import files
file = request.FILES['assets_thumbnail']
filename = '/gs/mybucketname/example.jpg'
writable_file_name = files.gs.create(filename, mime_type='image/jpeg', acl='public-read')
with files.open(writable_file_name, 'a') as f:
f.write(file.read())
files.finalize(writable_file_name)
これは正常に動作しますが、でマニュアルに:
https://developers.google.com/appengine/docs/python/googlestorage/functions
記載されている削除方法はありません。あなたは下のリンクでgoogle.appengine.api.filesのために実際のソースで(ライン504)を見ればしかし、
は、私が呼び出すことができますdeleteメソッドがありますが、私は理解できません私の人生のために、それが望んでいる議論とまったく同じです。私は、バケツの名前とそのような組み合わせをたくさん試しました。/Blobstore /で始めることが望ましいと思われます。これは、これまでCloud Storageとやりとりしていたこととは異なるものです。私は、google.appengine.api.filesが上に書かれているが、項目を削除する方法を正確に把握することはできません基礎blobstoreのクラスを見てきました。私がアップロードしたアイテムのBlobKeysを見つける必要があるようです。 Googleのホストであるウェブベースのバケツマネージャーと、それらが提供するgsutilコマンドラインユーティリティを使用して、それらをうまく削除できます。
誰かが、アプリエンジンにデプロイされたPythonアプリケーション経由でGoogle Cloud Storageからファイルを削除しましたか?あらゆる手掛かりや思考/アイデアは大変に感謝しています。
ありがとうスチュアート。私は何かが欠けていないことを知ってうれしいです。 –