【问题标题】:TypeError: 'str' object is not callable python3TypeError:'str'对象不可调用python3
【发布时间】:2018-07-16 12:52:12
【问题描述】:
def SaveRoles(request):
    if 'user_name' in request.session:
        if request.method == "POST":
            user_roles = request.POST['user_roles']
            user_permission_level = request.POST['user_permission_level']
            user_role_code = request.POST['user_role_code']
            code = user_roles(user_roles=user_roles, user_permission_level=user_permission_level, user_role_code=user_role_code)
            print("qqqqqq", code)
            try:
                model_status = code.save()
            except Exception as e:
                print("exception occured", e)
                return render(request, 'administrator/add_role.html', {'message': 'Oops some error occured'})
        if model_status == None:
            role = user_roles.objects.all()

            return HttpResponseRedirect('http://'+request.get_host()+'/admin/role-list/',{'message': 'Role added successfully','code': code})
        else:
            return HttpResponseRedirect('http://'+request.get_host()+'/admin/role-list/')
    else:
        return HttpResponseRedirect('/admin/')

当我运行这个函数时,我得到了

TypeError: 'str' 对象不可调用

我搜索了我所有的代码,但我什至没有在我的项目中的任何地方使用 str 这个词 但我无法弄清楚错误

【问题讨论】:

  • user_roles 是一个字符串。 user_roles = request.POST['user_roles']

标签: django python-3.x


【解决方案1】:

user_roles 是一个字符串,因为您正在分配 request.POST['user_roles'] 的值。你可能需要改变。

user_roles = request.POST['user_roles']

user_roles_val = request.POST['user_roles']

例如:

def SaveRoles(request):
    if 'user_name' in request.session:
        if request.method == "POST":
            user_roles_val = request.POST['user_roles']    #Update
            user_permission_level = request.POST['user_permission_level']
            user_role_code = request.POST['user_role_code']
            code = user_roles(user_roles=user_roles_val, user_permission_level=user_permission_level, user_role_code=user_role_code)   #Update
            print("qqqqqq", code)
            try:
                model_status = code.save()
            except Exception as e:
                print("exception occured", e)
                return render(request, 'administrator/add_role.html', {'message': 'Oops some error occured'})
        if model_status == None:
            role = user_roles.objects.all()

            return HttpResponseRedirect('http://'+request.get_host()+'/admin/role-list/',{'message': 'Role added successfully','code': code})
        else:
            return HttpResponseRedirect('http://'+request.get_host()+'/admin/role-list/')
    else:
        return HttpResponseRedirect('/admin/')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-03-07
    • 2019-03-05
    • 1970-01-01
    • 2020-09-16
    • 2019-06-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多