だから私はdjangoアプリケーションをappengineで起動して実行し、ユーザーがファイルをアップロードしたときにファイルを作成するようにしました。私が抱えている問題は、それらを削除する方法を見つけようとしていることです。それらを作成するための私のコードは次のようになります。
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
削除メソッドがリストされていません。ただし、以下のリンク(504行目)でgoogle.appengine.api.filesの実際のソースを確認すると
呼び出すことができるdeleteメソッドがありますが、それが必要とする引数を正確に理解することはできません。バケット名などといろいろ組み合わせてみました。/ blobstore /で開始したいようです。これは、クラウドストレージとやり取りするときにこれまでに行ったこととは異なります。google.appengine.api.filesがその上に記述されている基になるblobstoreクラスを調べてきましたが、それでもアイテムを削除する方法を正確に理解することはできません。アップロードしたアイテムのBlobKeyを見つける必要があるようです。googleがホストするWebベースのバケットマネージャーと、それらが提供するgsutilコマンドラインユーティリティを使用して、それらを正常に削除できます。
アプリエンジンにデプロイされたPythonアプリを介してGoogleクラウドストレージからファイルを正常に削除した人はいますか?手がかり/考え/アイデアは大歓迎です。