Django:如果QueryDi中不存在,则不赋值

2024-10-03 06:32:02 发布

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

我在寻找更好的编码方式:

我的代码是

@login_required 
def updateEmInfo(request):        
    userProfile = request.user.get_profile()
    if request.POST.__contains__('userType'):
        userType = request.POST['userType']
    else:
        userType = None

    if request.method == 'POST':
         ~~~~~~~~

如果我的代码是userType = request.POST['userType'],,那么如果userType不相等,我会得到一个错误。在

我不认为使用__contains__方法是个好主意,有没有更好的方法来编写这段代码?在

像下面这样简单的事情

^{pr2}$

Tags: 方法代码getifrequestdefrequiredlogin
2条回答

您可以使用^{}

request.POST.get('userType')

get(key[, default]) Return the value for key if key is in the dictionary, else default. If default is not given, it defaults to None, so that this method never raises a KeyError

一。在

您可以使用:

userType = request.POST.get('userType', None)

这大致相当于:

^{pr2}$

相关问题 更多 >