重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
數據庫有一條用戶的消費訂單,工作人員對這條訂單進行修改時,不能修改訂單里面的顧客信息,但是前端需要展示給這個訂單的顧客信息。
創新互聯是一家專注于成都網站設計、做網站與策劃設計,松陽網站建設哪家好?創新互聯做網站,專注于網站建設10多年,網設計領域的專業建站公司;建站業務涵蓋:松陽等地區。松陽做網站價格咨詢:18980820575
利用Jquery
// 1.先給id=id_order_customer的select框設置值a,這個值是你前面已經定義的變量
$("#id_order_customer").val(a)
// 2.給id=id_order_customer的select框屬性設置成不能操作
$("#id_order_customer").attr("disabled","disabled")
這樣設置以后,form里面的數據不會post傳遞給后端,如果后端要用這個數據,需進行處理
# 新建一個request.POST的副本,此時這個里面是沒有select的數據
transport_post_data = request.POST.copy()
# 拿到請求里面的參數orderid的值,
orderid = int(request.GET.get('orderid'))
# 查詢數據庫里面該條數據,
row_object = models.Orders.objects.filter(id=orderid).first()
# 由于在前端select框改成不可篩選,form不會把這個數據post傳進來,所以這里需要給添加上,要不然修改以后這個值會變成models當時設置的默認值為的null值
# 這條訂單里面的顧客設置成這條訂單的顧客
transport_post_data["order_customer"] = row_object.order_customer.id
# 對數據庫里面的這條數據進行更新保存
form = OrdersForm(data=transport_post_data, instance=row_object)
form.save()