2017-06-13 51 views
0

我想从我的webfrom上传文件,我不知道如何在后端处理这个问题。 我的模型看起来像这样从django网站上传文件

`from __future__ import unicode_literals 

from django.db import models` 

class RequesterInfo(models.Model): 
    department = models.CharField(max_length=200) 
    primary_contact = models.CharField(max_length=50) 
    project_name = models.CharField(max_length=200) 
    request_sponsor = models.CharField(max_length=200) 
    email = models.EmailField(max_length=200) 
    description = models.CharField(max_length=1000) 
    date_submitted = models.CharField(max_length=100) 
    time_constraints = models.CharField(max_length=200) 
    priority = models.CharField(max_length=10) 
    comments = models.CharField(max_length=250) 
    attachments = models.FileField(upload_to='Files') 

我在做正确的方式?文件是我当前目录中的一个文件夹。我现在需要使用MEDIA_ROOT吗?我在settings.py中找不到任何MEDIA_ROOT?有人可以帮助我在处理这一

+0

存储你还没有找到它,因为你必须确定你的'MEDIA_ROOT'是'settings.py' – Pythonista

+0

附件= models.FileField(upload_to ='Files' 你可以看到,我已经给出了上面的路径,是否仍然需要定义MEDIA_ROOT?有什么区别? – krish

回答

0

是的,你需要添加MEDIA_ROOT和MEDIA_URL settings.py中定义的Django在那里将存储MEDIA_ROOT文件夹内的所有上传的文件,所以你在FileField给出“文件”这意味着django将在MEDIA_ROOT文件夹中创建文件夹。当您从表单域上传任何文件,将在

MEDIA_ROOT > Files > uploaded file name 
+0

好吧,它会自动创建文件夹文件还是应该手动创建它?是否有任何最好的后续路径使用fot MEDIA_ROOT目录?我的意思是项目的哪个部分可以定义它? – krish

+0

Django将创建自动,您需要在settings.py中定义MEDIA_ROOT和MEDIA_URL。关于媒体文件。 https://timmyomahony.com/blog/static-vs-media-and-root-vs-path-in-django/ –