显示上传的文件django

时间:2013-04-15 08:06:25

标签: python django

如何检索和显示上传的文件?

这是我上传文件的模型

/models.py /

class resmodel(models.Model):
   file_header = models.CharField(max_length=100)
   upload_file = models.FileField(upload_to='documents')

/resume.html /

<form action="." method="post" >{% csrf_token %}
<table>
    <tr>
        <td>
            <label>File Header</label>
        </td>
        <td>:&nbsp;&nbsp;
            <label>{% for detail in profile_detail %}{{ detail.file_header }}{% endfor %}
        </td>
    </tr>

    <tr>
        <td>
            <label>FILE</label>
        </td>
        <td>:&nbsp;&nbsp;
            <label> {{ MEDIA_URL }}{% for detail in profile_detail %}{{ MEDIA_URL }}{{detail.upload_file}}{% endfor %}
        </td>
    </tr>
</table>
</form>

/urls.py /

urlpatterns = patterns('', (r'^profile/$', resview),)

/settings.py/在设置中,我的媒体路径和网址是..

CURRENT_DIR = os.path.dirname(os.path.abspath(__file__))
MEDIA_ROOT = os.path.join(CURRENT_DIR, 'media')
MEDIA_URL = '/var/www/project/media/'

我可以在我的html页面中显示上传的文件..

建议我,谢谢。

1 个答案:

答案 0 :(得分:0)

您可以通过访问url媒体资源来访问上传文件的网址。请参阅Django文档中的FieldField.url

在您的情况下,您会执行以下操作:<a href="{{ MEDIA_URL }}{{detail.upload_file.url}}">Uploaded File</a>,它会创建指向该文件的超链接,允许通过单击resume.html模板中的链接下载该文件。