2

FileField.save()250万を超えるファイルの舞台裏での作業はどのように行われますか?FileField.save()私は別の投稿で、保存するファイルの自動チャンク処理を行うことを読みました。しかし、2.5Mを超えるファイルが保存されているtmpディレクトリと同じマシンにファイルを保存する場合は、チャンクが必要ですか?tmpディレクトリがファイルを保存したい同じマシン上にある大きなファイルサイズのアップロード状況では、ファイルsave()だけmvをtmpディレクトリからターゲットディレクトリに移動し、チャンクをバイパスしますか?

4

1 に答える 1

2

これは、アップロードされたファイルをモデルに保存するときに処理することではありません。その場合は、使用済みに移動します。それはアップロードプロセス中にそのファイルを保存することです-小さなファイルはメモリに入れられ、大きなファイルはチャンクに分割されて一時ファイルに書き込まれます。

ファイルの保存について:

https://github.com/django/django/blob/master/django/db/models/fields/files.py

https://github.com/django/django/blob/master/django/core/files/storage.py

アップロードについて:

https://github.com/django/django/blob/master/django/core/files/uploadedfile.py

于 2012-05-09T05:16:45.743 に答える