当我编译下面的Python代码时,我得到了IndentationError:unindent与任何外部缩进级别都不匹配

2024-03-29 13:07:27 发布

您现在位置:Python中文网/ 问答频道 /正文

当我编译下面的Python代码时,我得到了IndentationError:unindent不匹配任何外部缩进级别,如何解决这个问题

def staffView(request):
    if request.method == "GET":
        return render(request, 'staff.html', {})
    elif request.method == "POST":
        print(request)

        dev_name = request.POST['dename']
        print("developer name: ", dev_name)

        dev_id = request.POST['dname']
        print("developer id: ", dev_id)
        
        developer = Developer.objects.create(developer_name=dev_name,developer_id=dev_id)
        developer.save();
        print("developer created")

    def index(request):
    if request.method == 'GET':
        print("returning index")
        return render(request, 'index.html')

    def assignmentView(request):
    if request.method == "GET":
        return render(request, 'assignment.html', {})

    elif request.method == "POST":
        print(request)
        #process your form data
        #and save it to your db
        assign_id = request.POST['aidd']
        print("assignment id: ", assign_id)

        dev_id = request.POST['dname']
        print("developer id: ", dev_id)

        supp_staff = request.POST['sstaff']
        print("support staff: ", supp_staff)

        assign_date = request.POST['adate']
        print("assignment date: ", assign_date)
        ProjectAssign = ProjectAssignment.objects.create(assignment_id=assign_id,developer_id=dev_id,project_id=proj_id,support_staff=supp_staff,assignment_date=assign_date)
        ProjectAssign.save();
        print("ProjectAssignment created")

    def projectView(request):
    if request.method == "GET":
        return render(request, 'project.html', {})
    elif request.method == "POST":
        print(request)
        
        proj_name = request.POST['pname']
        print("Project NAME: ", proj_name)

        proj_id = request.POST['pid']
        print("Project Id: ", proj_id)

        proj_type = request.POST['ptype']
        print("Project type: ", proj_type)

        stardate = request.POST['stdate']
        print("start date: ", stardate)

        endate = request.POST['edate']
        print("end date: ", endate)

        Financ_year = request.POST['yr']
        print("Financial year: ", Financ_year)

        descript = request.POST['desc']
        print("description: ", descript)
        
        Proj = Project.objects.create(project_name=proj_name,project_id=proj_id,project_type=proj_type,start_date=stardate,end_date=endate,Financialyear=Financ_year,description=descript)
        Proj.save();
        print("Project created")

1条回答
网友
1楼 · 发布于 2024-03-29 13:07:27

您收到异常是因为代码缩进错误,只需将所有函数移回即可。您的代码应该如下所示:

def staffView(request):
    if request.method == "GET":
        return render(request, 'staff.html', {})
    elif request.method == "POST":
        print(request)

        dev_name = request.POST['dename']
        print("developer name: ", dev_name)

        dev_id = request.POST['dname']
        print("developer id: ", dev_id)
        
        developer = Developer.objects.create(developer_name=dev_name,developer_id=dev_id)
        developer.save();
        print("developer created")

def index(request):
    if request.method == 'GET':
        print("returning index")
        return render(request, 'index.html')

def assignmentView(request):
    if request.method == "GET":
        return render(request, 'assignment.html', {})

    elif request.method == "POST":
        print(request)
        #process your form data
        #and save it to your db
        assign_id = request.POST['aidd']
        print("assignment id: ", assign_id)

        dev_id = request.POST['dname']
        print("developer id: ", dev_id)

        supp_staff = request.POST['sstaff']
        print("support staff: ", supp_staff)

        assign_date = request.POST['adate']
        print("assignment date: ", assign_date)
        ProjectAssign = ProjectAssignment.objects.create(assignment_id=assign_id,developer_id=dev_id,project_id=proj_id,support_staff=supp_staff,assignment_date=assign_date)
        ProjectAssign.save();
        print("ProjectAssignment created")

def projectView(request):
    if request.method == "GET":
        return render(request, 'project.html', {})
    elif request.method == "POST":
        print(request)
        
        proj_name = request.POST['pname']
        print("Project NAME: ", proj_name)

        proj_id = request.POST['pid']
        print("Project Id: ", proj_id)

        proj_type = request.POST['ptype']
        print("Project type: ", proj_type)

        stardate = request.POST['stdate']
        print("start date: ", stardate)

        endate = request.POST['edate']
        print("end date: ", endate)

        Financ_year = request.POST['yr']
        print("Financial year: ", Financ_year)

        descript = request.POST['desc']
        print("description: ", descript)
        
        Proj = Project.objects.create(project_name=proj_name,project_id=proj_id,project_type=proj_type,start_date=stardate,end_date=endate,Financialyear=Financ_year,description=descript)
        Proj.save();
        print("Project created")

相关问题 更多 >