使用自定义表单中的数据更新数据库

好的,所以我想使用如下所示的自定义表单更新有关用户的信息。


<form action="" >

 <!--csrftoken-->

  <input type="text" placeholder="Your new name" name="name">

  <input type="text" placeholder="Your new email" name="email">

  <input type="text" placeholder="Your new number" name="number">

  <button type="submit" class="raise">Submit</button>

</form>

如何用填充的数据更新用户。假设用户填写了电话号码和电子邮件字段,其余部分留空,电子邮件和电话号码已更改,但姓名保持不变。我正在考虑预填充表单,但这需要另一个数据库请求,我想避免这种情况。


def updateCustomer(request):

    current           = request.user

    if request.method == 'POST':

        newphone      = request.POST['newPhone']

        newemail      = request.POST['email']

        newname       = request.POST['name']     

        addingToBase  = Customer.objects.get(user=current)

        xD            = addingToBase(email=newemail,name=newname,phone=newphone)

        xD.save()

        return redirect('home')


米脂
浏览 80回答 1
1回答

犯罪嫌疑人X

在分配返回值之前检查返回值怎么样?def updateCustomer(request):&nbsp; &nbsp; current&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;= request.user&nbsp; &nbsp; if request.method == 'POST':&nbsp; &nbsp; &nbsp; &nbsp; newphone&nbsp; &nbsp; &nbsp; = request.POST['number']&nbsp; &nbsp; &nbsp; &nbsp; newemail&nbsp; &nbsp; &nbsp; = request.POST['email']&nbsp; &nbsp; &nbsp; &nbsp; newname&nbsp; &nbsp; &nbsp; &nbsp;= request.POST['name']&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; curCust&nbsp; = Customer.objects.get(user=current)&nbsp; &nbsp; &nbsp; &nbsp; if newphone:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curCust.phone = newphone&nbsp; &nbsp; &nbsp; &nbsp; if newemail:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curCust.email = newemail&nbsp; &nbsp; &nbsp; &nbsp; if newname:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curCust.name = newname&nbsp; &nbsp; &nbsp; &nbsp; if newphone or newemail or newname:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curCust.save()&nbsp; &nbsp; &nbsp; &nbsp; return redirect('home')
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python