尝试访问 formset.cleaned_data.get['field'] 时出现类型错误



我正在尝试遍历表单集中的所有表单并获取所有值,但收到以下错误:

TypeError:'builtin_function_or_method' object is not subscriptable'

回溯显示正确的值在 Post 之后,但表示导致错误的行是:

time = cd.get['LunchDuration']

cd 的值为:

 {'DELETE': False,
 'EndTime': datetime.time(3, 30),
 'LunchDuration': 6,
 'LunchTime': datetime.time(3, 30),
 'StartTime': datetime.time(3, 30)}

我关注了帖子 Django 访问表单集数据,但在将局部变量设置为帖子数据之前抛出了一个错误。

这是我 Form.py 的代码:

def new_schedule(request):
if request.method == 'POST': 
    RNform = RNFormSet(request.POST, prefix='RN')
    if RNform.is_valid():
        nurses = []
        for form in RNform:
            cd = form.cleaned_data
            time = cd.get['LunchDuration']
            nurses.append(NurseSchedule(
                StartTime=cd.get['StartTime'],
                LunchTime=cd.get["LunchTime"],
                LunchDuration=cd.get["LunchDuration"],
                EndTime=cd.get["EndTime"]
            ))
        context = {'RNSet': nurses}
        return render(request, 'generate_schedule.html', context)

您需要对get()方法调用使用括号。取代:

cd.get['StartTime']

跟:

cd.get('StartTime')

相关内容

最新更新