django中文件(头像)上传

一些常用的小功能,记录下来

先说一种上传功能。

模板表单

        <form  enctype="multipart/form-data"  name="form1" method="POST" action="" >

            {% csrf_token %}

            <table>

                <tr>

                    <td>标题</td>

                    <td>

                        <input name="avatar" type="file" size="60" />

                        <img src="/media/{{userInfos.2.avatar}}" width="120px" height="120px"/>

                    </td>

                </tr>

               

                <tr>

                    <td></td>

                    <td><input type="submit" name="ok" value="--修改--"/></td>

                </tr>



            </table>

        </form>

后台处理

    if request.POST.has_key['ok']:

        userProfile.avatar=utility.SaveFile(request.FILES['avatar'],'avatar/')

      

        userProfile.save()
utility.SaveFile函数如下
def SaveFile(file,path='',fileName=''):

    fileName=file._get_name() if fileName=='' else fileName

    filePath=str(path)+str(fileName)

    rootFilePath='%s%s' %(settings.MEDIA_ROOT,filePath)

    fd=open(rootFilePath,'wb')

    for chunk in file.chunks():

        fd.write(chunk)

    fd.close()

    return filePath

 

我设置的settings.MEDIA_ROOT='D:/mysite/TBlog/TBlog/media/'

上面的图片将上传到

D:/mysite/TBlog/TBlog/media/avatar/目录下面

你可能感兴趣的:(django)