13

まだ私のdjangoプロジェクトにあるパスにファイルをアップロードしたいのですが、私のMEDIA_ROOTパスにあります。

これを実行しようとすると、SuspiciousOperationエラーが発生します。

私の設定ファイルで定義されているパスは次のとおりです。

MEDIA_ROOT = os.path.join(os.path.dirname( __file__ ), 'static_serve')
UPLOAD_DIR = os.path.join(os.path.dirname( __file__ ), 'uploads')

アップロードしているファイルにブラウザからアクセスできるようにしたくないので、これを行っていますMEDIA_ROOT。パスは.

このエラーを回避 (修正) する方法を知っている人はいますか?

4

1 に答える 1

28

はい、方法があります

ドキュメントから:

たとえば、次のコードは、MEDIA_ROOT の設定に関係なく、アップロードされたファイルを /media/photos に保存します。

from django.db import models
from django.core.files.storage import FileSystemStorage

fs = FileSystemStorage(location='/media/photos')

class Car(models.Model):
    ...
    photo = models.ImageField(storage=fs)
于 2010-09-03T00:26:29.433 に答える