Django中的编码问题

import os
c = os.path.join(a,b)

a,b编码格式不同的时候,不能拼接,拼接的结果是a,b,c全部失效。

html中拿到的键值属性编码格式为unicode格式,
python中设定的字符串格式为utf-8格式

举个栗子:

uploadPic.html代码段

    <form action="/uploadHandle" method="post" enctype="multipart/form-data">
        {% csrf_token %}
        <input type="file" name="pic1">
        <br>
        <input type="submit" value="上传">
    </form>
后台处理代码段

def uploadHandle(request):
    pic1 = request.FILES['pic1']
    #下面的语句就会出现上述的错误,但不会报错,就是一拼接返回值就为空
    #编码问题一定要注意
    picName = os.path.join(settings.MEDIA_ROOT,pic1.name.encode('utf-8'))
    return HttpResponse(picName)

猜你喜欢

转载自blog.csdn.net/hotchange/article/details/80159442