如何在django中未由模型备份的表单上使用相同的存储?

时间:2011-11-29 07:56:07

标签: django

假设我有这种形式:

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:
        ...

我不知道如何在没有ModelForm的情况下使用storageupload_to字段。

1 个答案:

答案 0 :(得分:1)

您可以像使用其他课程一样使用您的存储空间。其API为well-documented

或者您可以在settings.py中设置DEFAULT_FILE_STORAGE,它将自动用于您的所有文件操作。