Как я могу использовать то же хранилище в форме, которая не поддерживается моделью в django? - PullRequest
1 голос
/ 29 ноября 2011

Допустим, у меня есть эта форма:

class SimpleUploadForm(forms.Form):
   file = forms.FileField()

У меня есть эта модель:

class MyModel(models.Model):
   first_file = models.FileField(upload_to="uploads/%Y/%m/%d",storage=MyCustomStorage())
   second_file = models.FileField(upload_to="uploads/%Y/%m/%d",storage=MyCustomStorage())

, для которого я также предоставляю ModelForm. Часть представления для SimpleUploadForm выглядит следующим образом:

def simple_upload(request):
   ...
   if request.method == "POST":
      form = SimpleUploadForm(request.POST,request.FILES)
      if form.is_valid():
         # what do I need to do here to save the file in the same place where the `MyModel` ModelForm is saving them?
      else:
        ...

Я не знаю, как использовать поля storage и upload_to без ModelForm.

1 Ответ

1 голос
/ 29 ноября 2011

Вы можете использовать свое хранилище как любой другой класс.Его API хорошо документирован .

Или вы можете установить DEFAULT_FILE_STORAGE в settings.py, и он будет использоваться автоматически для всех ваших файловых операций.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...