アップロードされたファイルを Model で開こうとしていますがclean_fields()
、
class Person(models.Model):
attach = models.FileField(upload_to='attach')
def clean_fields(self, exclude=True):
f = open(self.attach.path, 'rb')
問題は、 model の前にsave()
、 self.attach.path が実際に間違っていることです。upload_to
パスがありません。そして、ファイルはまだ存在しません。
self.attach.path
のみが存在し、モデルの後に正しいですsave()
プロセスでアップロードされたファイルのコンテンツを検証するにはどうすればよいclean_fields()
ですか? モデルが保存された後のエラーではなく、ValidationError を発生させたい。