0

初心者です。私はなんとかdjango-ajax-uploadを私のdjango研究プロジェクトにインストールしました。そして、その初期ビュー、URL、およびテンプレートを使用して、それがどのように機能するかを確認します。デフォルトのディレクトリ「upload」にファイルを正常にアップロードしました。

今、私はdjango-ajax-upload で使用される UPLOAD_DIRを 'endorsement' フォルダーのようなものに変更しようとしています。

django-ajax-upload について: UPLOAD_DIR は local.py の LocalUploadBackend クラスにあります。

/ajaxuploader/backends/local.py

class LocalUploadBackend(AbstractUploadBackend):
    UPLOAD_DIR = "uploads"

    def setup(self, filename, *args, **kwargs):
        self._path = os.path.join(
            settings.MEDIA_ROOT, self.UPLOAD_DIR, filename)
        try:
            os.makedirs(os.path.realpath(os.path.dirname(self._path)))
        except:
            pass
        self._dest = BufferedWriter(FileIO(self._path, "w"))

ajax アクションはimport_uploader = AjaxFileUploader()、ファイルをアップロードするために を呼び出しています。AjaxFileUploader がこれを持っている場所__init__

class AjaxFileUploader(object):
    def __init__(self, backend=None, **kwargs):
        if backend is None:
            backend = LocalUploadBackend
        self.get_backend = lambda: backend(**kwargs)

これがサブクラスを介して UPLOAD_DIR を変更する正しい方法かどうかはわかりません。これが私のコードです。

from ajaxuploader.views import AjaxFileUploader
from ajaxuploader.backends.local import LocalUploadBackend

class myajaxfileuploader(AjaxFileUploader):
    def __init__(self, backend=None, **kwargs):
        local = LocalUploadBackend.UPLOAD_DIR
        local = "endorsement"
        super(myajaxfileuploader,self).__init__(backend=local, **kwargs)

ファイルのアップロード ファイル ボタンは表示されますが、アップロードに失敗しました。これを行う正しい方法は何ですか?

4

1 に答える 1