django表单,单选,多选(数据,文件上传)

表单数据

template
{% csrf_token %} username:
password:
boy: girl:
爱好:吃饭 钓鱼 洗澡
类型:
urls.py 略
view.py
def index(request):
    if request.method == 'POST':
        username = request.POST.get("username")
        password = request.POST.get("password")
        gender = request.POST.get("gender")
        favor = request.POST.getlist("favor")
        leixing = request.POST.getlist("leixing")
        print("username:%s----password:%s-----gender:%s" % (username, password, gender))
        print(favor)
        print(leixing)
        return redirect('/')
    else:
        return render(request, 'index.html')

文件上传

template
{% csrf_token %} 文件上传:
view.py
from django.shortcuts import render, redirect
import os
# Create your views here.


def index(request):
    if request.method == 'POST':

        obj = request.FILES.get("file")
        
        #obj: 文件的对象  obj.name:文件名  obj.chunks():文件一点一点上传到服务器
        #print(obj, obj.name, obj.chunks())
        
        #为了把文件上传到static下,拼接路径   例:static/abc123.jpg
        filepath = os.path.join('static', obj.name)
        
        #把文件一点一点写入static/abc123.jpg
        with open(filepath, 'wb') as f:
            for i in obj.chunks():
                f.write(i)

        return redirect('/')
    else:
        return render(request, 'index.html')

你可能感兴趣的:(django表单,单选,多选(数据,文件上传))