def delete_address(request, address_id, sign): util = Util() username = util.check_user(request) if username == "": uf = LoginForm() return render(request, "index.html", {'uf': uf, "error": "请登录后再进入"}) else: if not util.check_User_By_Address(request, username, address_id): return render(request, "error.html", {"error": "你试图删除不属于你的地址信息!"}) else: #获取指定地址信息 user_list = get_object_or_404(User, username=username) #删除这个地址信息 Address.objects.filter(id=address_id).delete() #返回地址列表页面 address_list = Address.objects.filter(user_id=user_list.id) #如果sign==2,返回订单信息页面 if sign == "2": return render(request, 'view_address.html', { "user": username, 'addresses': address_list }) #进入订单用户信息 #否则进入用户信息页面 else: response = HttpResponseRedirect('/user_info/') # 进入用户信息 return response
def update_address(request, address_id, sign): # 检查用户是否登录 util = Util() username = util.check_user(request) if username == '': uf = LoginForm() return render(request, 'index.html', {'uf': uf, 'error': '请登录后再进入'}) else: # 判断修改地址是否为当前登录用户 if not util.check_User_By_Address(username=username, address_id=address_id): return render(request, 'error.html',{'user':username, 'error':'你试图修改不属于你的地址'}) cur_address = get_object_or_404(Address, id=address_id) user_list = get_object_or_404(User, username=username) # 获取登录的用户信息 if request.method=='POST': uf = AddressForm(request.POST) if uf.is_valid(): new_address = request.POST.get('address','') new_phone = request.POST.get('phone', '') check_address = Address.objects.filter(address=new_address, user_id=user_list.id) if check_address: return render(request, 'update_address.html', {'address':cur_address, 'error':'这个地址已经存在'}) else: Address.objects.filter(id=address_id).update(address=new_address,phone=new_phone) address_list = Address.objects.filter(user_id=user_list.id) if sign=='2': return render(request, 'view_address.html', {'user': username, 'addresses': address_list}) else: return redirect('/user_info/') else: return render(request,'update_address.html',{'address':cur_address})
def update_address(request, address_id, sign): util = Util() username = util.check_user(request) if username == "": uf = LoginForm() return render(request, "index.html", {'uf': uf, "error": "请登录后再进入"}) else: #判断修改的地址是否属于当前登录用户 if not util.check_User_By_Address(request, username, address_id): return render(request, "error.html", {"error": "你试图修改不属于你的地址信息!"}) else: #获取指定地址信息 address_list = get_object_or_404(Address, id=address_id) #获取当前登录用户的用户信息 user_list = get_object_or_404(User, username=username) #获取用户编号 id = user_list.id #如果是提交状态 if request.method == "POST": #如果表单提交,准备获取表单信息 uf = AddressForm(request.POST) #表单信息验证 if uf.is_valid(): #如果数据准确,获取表单信息 myaddress = (request.POST.get("address", "")).strip() phone = (request.POST.get("phone", "")).strip() #判断修改的地址信息这个用户是否是否存在 check_address = Address.objects.filter(address=myaddress, user_id=id) #如果不存在,将表单数据修改进数据库 if not check_address: Address.objects.filter(id=address_id).update( address=myaddress, phone=phone) #否则报“这个地址已经存在!”的错误提示信息 else: return render( request, 'update_address.html', { 'uf': uf, 'error': '这个地址已经存在!', 'address': address_list }) #获得当前登录用户的所有地址信息 address_list = Address.objects.filter(user_id=user_list.id) #如果sign==2,返回订单信息页面 if sign == "2": return render(request, 'view_address.html', { "user": username, 'addresses': address_list }) #进入订单用户信息 #否则进入用户信息页面 else: response = HttpResponseRedirect( '/user_info/') # 进入用户信息 return response #如果没有提交,显示修改地址页面 else: return render(request, 'update_address.html', {'address': address_list})
def delete_address(request, address_id, sign): # 检查用户是否登录 util = Util() username = util.check_user(request) if username == '': uf = LoginForm() return render(request, 'index.html', {'uf': uf, 'error': '请登录后再进入'}) else: # 判断修改地址是否为当前登录用户 if not util.check_User_By_Address(username=username, address_id=address_id): return render(request, 'error.html', {'user': username, 'error': '你试图修改不属于你的地址'}) user_list = get_object_or_404(User, username=username) # 获取登录的用户信息 Address.objects.filter(id=address_id).delete() address_list = Address.objects.filter(user_id=user_list.id) if sign=='2': return render(request, 'view_address.html', {'user': username, 'addresses': address_list}) else: return redirect('/user_info/')