Django-StoragesからS3BotoStorageをサブクラス化する新しいStorageクラスを実装しようとしています。(http://code.larlet.fr/django-storages/src/83fa2f0ba20c/storages/backends/s3boto.py)
新しいクラスのsaveメソッドが呼び出されるときはいつでも、他のことをしてからS3BotoStorage._save()メソッドを呼び出したいと思います。このような:
class CustomStorage(S3BotoStorage):
def __init__(self, *args, **kwargs):
super(CustomStorage, self).__init__(*args, **kwargs)
def _save(self,*args, **kwargs):
#Will do stuff there
print >> sys.stderr, "%s" % (self.bucket)
super(CustomStorage, self)._save(*args, **kwargs)
このCustomStorage._save()メソッドがない場合は、すべてが正常に機能します(つまり、S3BotoStorage._save(name、content)が呼び出され、すべてがS3にアップロードされます)。ただし、この新しいCustomStorage.saveメソッドがある場合、500エラーが発生します。(ただし、エラーメッセージがターミナルに表示されるため、呼び出されます)。コールスタックなどが表示されません。
私は試した:
def save(self,*args, **kwargs):
def save(self,name, content):
これらのどちらも機能しませんでした。
何か案は?!
ありがとう!