Django 2.0.3通过models.FileField()上传文件

时间:2018-07-18 19:50:14

标签: django django-models django-forms django-views

我是django初学者。我正在构建我的第一个认真的应用程序,我想使用将文件上传到服务器的机制。我已经搜索了大部分的网络,但是在 django2 中找不到任何容易的指南可以解决此问题。

是否有经验丰富的django ninja可以为我提供一个全面的过程来设计此解决方案,从创建模型到通过表单以及从外观到视图?我曾尝试使用官方文档,但无济于事。

我将非常感谢! :D

1 个答案:

答案 0 :(得分:0)

我想知道文档出了什么问题。问问题时应该更加具体,这有助于想要回答的人。 让我尝试回答您的问题。

您的模型将只包含一个额外的文件字段,像这样

class MyModel(models.Model): my_field = models.FileField(upload_to='your_location') 您的表格将会 只是一个模型表单,其中将包含此模型名称为 class Meta

在视图部分中,您可以将其简单地作为后处理请求,但必须添加request.FILES 就像

If request.method=='POST':
    form = MyModelForm(request.POST, request.FILES)

现在让我谈谈upload_to参数。您必须在这里传递一个字符串。如果您已经完成了媒体根目录设置,则文件将被上传到媒体目录中的该目录。