def table_obj_change(request,app_name,model_name,obj_id): """kingadmin数据修改页""" admin_class = site.enable_admins[app_name][model_name] model_form = create_dynamic_model_form(admin_class) obj = admin_class.model.objects.get(id=obj_id) if request.method == 'GET': form_obj = model_form(instance=obj) # print(dir(form_obj)) # print(dir(form_obj.instance)) # for field in form_obj: # print(dir(field)) # print(field.name) # print(field.label) # print(field.value()) elif request.method == 'POST': print(type(request.POST.get('password'))) if request.POST.get('password',None) and len(request.POST.get('password'))!= 78: request.POST._mutable = True request.POST['password'] = make_password(request.POST.get('password')) request.POST._mutable = False print(request.POST) form_obj = model_form(instance=obj,data=request.POST) if form_obj.is_valid(): form_obj.save() return redirect('kingadmin:table_obj_list',app_name,model_name) return render(request,'kingadmin/table_obj_change.html',locals())
def table_obj_add(request,app_name,model_name): admin_class = site.enabled_admins[app_name][model_name] model_form = form_handle.create_dynamic_model_form(admin_class,form_add=True) if request.method == "GET": form_obj = model_form() elif request.method == "POST": form_obj = model_form(data=request.POST) if form_obj.is_valid(): form_obj.save() return redirect("/kingadmin/%s/%s/" % (app_name, model_name)) return render(request,'kingadmin/table_obj_add.html',locals())
def table_obj_change(request, app_name, model_name, pk): '''kingadmin 数据修改页''' admin_class = site.enable_admins[app_name][model_name] model_form = form_handle.create_dynamic_model_form(admin_class) #实例化 obj = admin_class.model.objects.get(pk=pk) if request.method == 'GET': form_obj = model_form(instance=obj) elif request.method == 'POST': form_obj = model_form(instance=obj, data=request.POST) if form_obj.is_valid(): form_obj.save() return redirect("/kingadmin/%s/%s" % (app_name, model_name)) return render(request, 'kingadmin/table_obj_change.html', locals())
def table_obj_add(request, app_name, model_name): """添加""" admin_class = site.enabled_admins[app_name][model_name] model_form = form_handle.create_dynamic_model_form(admin_class, form_add=True) if request.method == 'GET': form_obj = model_form() print('----', form_obj) elif request.method == 'POST': form_obj = model_form(data=request.POST) if form_obj.is_valid(): form_obj.save() return redirect('/kingadmin/%s/%s' % (app_name, model_name)) return render(request, 'table_obj_add.html', locals())
def table_obj_add(request,app_name,model_name): '''kingadmin 数据添加''' admin_class = site.enable_admins[app_name][model_name] model_form = form_handle.create_dynamic_model_form(admin_class,form_add=True) if request.method == 'GET': form_obj = model_form() elif request.method == 'POST': form_obj = model_form(data=request.POST) if form_obj.is_valid(): form_obj.save() #跳转到的页面 return redirect("/kingadmin/%s/%s/"%(app_name,model_name)) return render(request, 'kingadmin/table_obj_add.html', locals())
def table_obj_change(request, app_name, model_name, obj_id): """kingadmin 数据修改页""" admin_class = site.enabled_admins[app_name][model_name] model_form = form_handle.create_dynamic_model_form(admin_class) print(model_form) obj = admin_class.model.objects.get(id=obj_id) if request.method == "GET": form_obj = model_form(instance=obj) #instance当前正在修改的对象 elif request.method == "POST": form_obj = model_form(instance=obj, data=request.POST) if form_obj.is_valid(): form_obj.save() #ModelForm直接保存,Form需要从clean_data中取出数据 return redirect('/kingadmin/%s/%s/' % (app_name, model_name)) return render(request, "kingadmin/table_obj_change.html", locals())
def table_obj_change(request, app_name, model_name, obj_id): """kingadmin数据修改页""" admin_class = site.enabled_admins[app_name][model_name] model_form = form_handle.create_dynamic_model_form(admin_class) obj = admin_class.model.objects.get(id=obj_id) if request.method == "GET": form_obj = model_form(instance=obj) elif request.method == "POST": form_obj = model_form(instance=obj, data=request.POST) if form_obj.is_valid(): form_obj.save() return redirect("/kingadmin/%s/%s/" % (app_name, model_name)) # form_obj = model_form(instance=obj) return render(request, 'kingadmin/table_obj_change.html', locals())
def table_obj_add(request,app_name,model_name): """增加操作(页面)""" admin_class = site.enabled_admins[app_name][model_name] model_form = form_handle.create_dynamic_model_form(admin_class,form_add=True) if request.method == 'GET': # GET:查看当前页,返回当前对象的所有数据 form_obj = model_form() else: # POST: 修改当前页,获取数据并保存新数据 form_obj = model_form(data=request.POST) if form_obj.is_valid(): form_obj.save() return redirect("/kingadmin/%s/%s/" % (app_name, model_name)) return render(request, 'kingadmin/table_obj_add.html', locals())
def table_obj_change(request, app_name, model_name, obj_id): """kingadmin数据修改页""" admin_class = site.enabled_admins[app_name][model_name] model_form = form_handle.create_dynamic_model_form(admin_class) obj = admin_class.model.objects.get(id=obj_id) if request.method == 'GET': form_obj = model_form(instance = obj) #将需要修改项的数据传到前端 elif request.method =='POST': #判断修改的数据否符合规则,是的话保存并返回,不是的话返回前端错误信息 form_obj = model_form(instance=obj, data=request.POST) if form_obj.is_valid(): form_obj.save() return redirect('/kingadmin/%s/%s'%(app_name, model_name)) return render(request, 'kingadmin/table_obj_change.html', locals())
def table_obj_change(request,app_name,model_name,obj_id): """信息修改操作(页面)""" admin_class = site.enabled_admins[app_name][model_name] model_form = form_handle.create_dynamic_model_form(admin_class) obj = admin_class.model.objects.get(id=obj_id) if request.method == 'GET': # GET:查看当前页,返回当前对象的所有数据 form_obj = model_form(instance=obj) else: # POST: 修改当前页,获取数据并保存新数据 form_obj = model_form(instance=obj, data=request.POST) if form_obj.is_valid(): form_obj.save() return redirect("/kingadmin/%s/%s/" % (app_name, model_name)) # print("type--------------",type(form_obj)) return render(request, 'kingadmin/table_obj_change.html', locals())
def table_obj_add(request,app_name,model_name): admin_class = site.enable_admins[app_name][model_name] model_form = create_dynamic_model_form(admin_class,form_add=True) if request.method == 'GET': form_obj = model_form() elif request.method == 'POST': print(request.POST) if request.POST.get('password',None): request.POST._mutable = True request.POST['password'] = make_password(request.POST.get('password')) request.POST._mutable = False print(request.POST) form_obj = model_form(data=request.POST) if form_obj.is_valid(): form_obj.save() return redirect('kingadmin:table_obj_list',app_name,model_name) return render(request,'kingadmin/table_obj_add.html',locals())
def model_obj_add(request, app_name, model_name): """kingadmin 數據添加""" admin_class = site.enabled_admins[app_name][model_name] # 動態生成model_form form_add = True model_form = form_handle.create_dynamic_model_form(admin_class, form_add) if request.method == "GET": # 實例化表單對象 form_obj = model_form() elif request.method == "POST": print("request.POST", request.POST) form_obj = model_form(data=request.POST) if form_obj.is_valid(): print("valid") form_obj.save() return redirect("/kingadmin/%s/%s/" % (app_name, model_name)) return render(request, "kingadmin/model_obj_add.html", locals())
def table_obj_change(request,app_name,model_name,obj_id): '''kingadmin 数据修改页''' admin_class = site.enable_admins[app_name][model_name] model_form = form_handle.create_dynamic_model_form(admin_class) #让表单变成是修改的表单 obj = admin_class.model.objects.get(id=obj_id) #修改 if request.method == 'GET': form_obj = model_form(instance=obj) elif request.method == 'POST': form_obj = model_form(instance=obj,data=request.POST) if form_obj.is_valid(): form_obj.save() #修改后跳转到的页面 return redirect("/kingadmin/%s/%s/"%(app_name,model_name)) return render(request,'kingadmin/table_obj_change.html',locals())
def model_obj_change(request, app_name, model_name, obj_id): """kingadmin 數據修改""" # form_obj = form_handle.CustomerForm() admin_class = site.enabled_admins[app_name][model_name] # 動態生成model_form form_add = False model_form = form_handle.create_dynamic_model_form(admin_class, form_add) # 資料對象 obj = admin_class.model.objects.filter(id=obj_id)[0] if request.method == "GET": # 實例化表單對象 form_obj = model_form(instance=obj) elif request.method == "POST": # print("request.POST", request.POST) form_obj = model_form(instance=obj, data=request.POST) if form_obj.is_valid(): # 判斷資料是否合法 form_obj.save() # 資料更新 return redirect("/kingadmin/%s/%s/" % (app_name, model_name)) return render(request, "kingadmin/model_obj_change.html", locals())