是否可以更改request.POST._mutable

时间:2017-06-17 20:51:17

标签: django

Django 1.11.2

你认为这是一个好的风格:

在CBV:

request.POST._mutable = True
request.POST['{}_date_day'.format(prefix)] = ceil_day(day=day, month=month, year=year)
request.POST._mutable = False

该计划运作良好。我很满意。让我烦恼的是这是否合适。也许这真的是一种不好的做法。

我的意思是,我们应该更改私有财产_mutable是否可以接受?

1 个答案:

答案 0 :(得分:1)

Form的第一个参数只是一个字典,没有必要使用request.POST querydict,干扰框架的内部工作是一个不好的做法,你会让你的代码更多便携式,如果你这样做:

my_querydict = request.POST.copy() #creates a mutable copy
my_querydict['{}_date_day'.format(prefix)] = ceil_day(day=day, month=month, year=year)
form = WhateverForm(my_querydict)

以后你会对自己感觉更好: - )