假设我有这种形式:
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的情况下使用storage
和upload_to
字段。
答案 0 :(得分:1)
您可以像使用其他课程一样使用您的存储空间。其API为well-documented。
或者您可以在settings.py
中设置DEFAULT_FILE_STORAGE,它将自动用于您的所有文件操作。