1

easy-thumbnailsアプリを使用して、django アプリにアップロードされた画像の最大サイズを設定する方法はありますか?

設定リストには、それについて何も表示されません。

4

1 に答える 1

-2

ファイル サイズを制限するには、Django ではなく Web サーバーで行うことをお勧めします。

または、ファイルが大きすぎる場合にエラーを発生させるカスタム ファイル ハンドラを指定することもできます。

from django.core.files.uploadhandler import TemporaryFileUploadHandler, StopUpload

class SizeLimitUploadHandler(TemporaryFileUploadHandler):
    def new_file(self, field_name, file_name, content_type, content_length, charset):
        if content_length > MAX_FILE_SIZE:
            raise StopUpload(True)

ただし、これにより、大きなファイルの処理を停止するために接続リセット エラーが発生します。

画像サイズを制限したい場合は、readme に記載されているように、保存する前に画像のサイズを変更できます。

resize_sourceに引数を渡すことThumbnailerImageFieldで、保存する前にソース イメージのサイズを変更できます。

class Profile(models.Model):
    user = models.ForeignKey('auth.User')
    avatar = ThumbnailerImageField(
        upload_to='avatars',
        resize_source=dict(size=(50, 50), crop='smart'),
    )
于 2011-07-20T16:15:11.167 に答える