コード例 #1
0
def table_obj_add(request, app_name,model_name, no_render=False):
    print("requestpath", request.path)
    if app_name in site.registered_admins:
        if model_name in site.registered_admins[app_name]:
            admin_class = site.registered_admins[app_name][model_name]

            form = forms.create_dynamic_modelform(admin_class.model, admin_class=admin_class, form_create=True)
            if request.method == "GET":
                form_obj = form()
            elif request.method == "POST":
                form_obj = form(data=request.POST)
                if form_obj.is_valid():
                    form_obj.save()

                    if no_render:
                        redirect_url_list = request.path.split('/')
                        redirect_url = '/'.join(redirect_url_list[1:4])
                        redirect_url = '/' + redirect_url + '/'
                        print(redirect_url)
                        return redirect_url
                    else:
                        return redirect(request.path.rstrip("add/"))

    if no_render:  # 被其它函数调用,只返回数据
        return locals()
    else:
        return render(request, 'luffyadmin/table_object_add.html', locals())
コード例 #2
0
ファイル: views.py プロジェクト: willianflasky/growup
def table_obj_change(request,app_name,model_name,object_id):
    if app_name in site.registered_admins:
        if model_name in site.registered_admins[app_name]:
            admin_class = site.registered_admins[app_name][model_name]
            object = admin_class.model.objects.get(id=object_id)
            form = forms.create_dynamic_modelform(admin_class.model)
            if request.method == "GET":
                form_obj = form(instance=object)
            elif request.method == "POST":
                form_obj = form(instance=object,data=request.POST)
                if form_obj.is_valid():
                    form_obj.save()

    return render(request,'luffyadmin/table_object_change.html',locals())
コード例 #3
0
ファイル: views.py プロジェクト: willianflasky/growup
def table_obj_add(request,app_name,model_name):
    print("requestpath", request.path)
    if app_name in site.registered_admins:
        if model_name in site.registered_admins[app_name]:
            admin_class = site.registered_admins[app_name][model_name]

            form = forms.create_dynamic_modelform(admin_class.model)
            if request.method == "GET":
                form_obj = form()
            elif request.method == "POST":
                form_obj = form(data=request.POST)
                if form_obj.is_valid():
                    form_obj.save()

                    return redirect(request.path.rstrip("add/"))

    return render(request, 'luffyadmin/table_object_add.html', locals())
コード例 #4
0
def table_obj_add(request, app_name, model_name):
    if app_name in site.registered_admins:
        # 再如果表在这个内层字典中      {'crm':{'customer':admin_class}}
        if model_name in site.registered_admins[app_name]:
            # 获取到admin_class (这就是管理类, 同时表也存在属性里admin_class.model)
            admin_class = site.registered_admins[app_name][model_name]

            # 动态类,实例化
            form = forms.create_dynamic_modelform(admin_class.model)
            if request.method == 'GET':
                form_obj = form()
            elif request.method == 'POST':
                form_obj = form(data=request.POST)
                if form_obj.is_valid():
                    form_obj.save()
                    return redirect(request.path.rstrip('add/'))

    return render(request, 'luffyadmin/table_object_add.html', locals())
コード例 #5
0
def table_obj_change(request, app_name, model_name, object_id):
    # 如果crm在这个字典中
    if app_name in site.registered_admins:
        # 再如果表在这个内层字典中      {'crm':{'customer':admin_class}}
        if model_name in site.registered_admins[app_name]:
            # 获取到admin_class (这就是管理类, 同时表也存在属性里admin_class.model)
            admin_class = site.registered_admins[app_name][model_name]
            # 去表中获取数据,通过ID
            data_obj = admin_class.model.objects.get(id=object_id)
            # 动态类,实例化
            form = forms.create_dynamic_modelform(admin_class.model)

            if request.method == 'GET':
                # 将数据放入这个实例中, 将form_obj返回给前端.
                form_obj = form(instance=data_obj)
            elif request.method == 'POST':
                form_obj = form(instance=data_obj, data=request.POST)
                if form_obj.is_valid():
                    form_obj.save()

    return render(request, 'luffyadmin/table_object_change.html', locals())
コード例 #6
0
def table_obj_change(request, app_name, model_name, object_id, no_render=False):
    """
    from luffyAdmin import forms
    from app import models
    obj = models.Customer.objects.get(id=object_id)
    form = forms.CustomerForm(instance=obj)
    """

    if app_name in site.registered_admins:
        if model_name in site.registered_admins[app_name]:
            admin_class = site.registered_admins[app_name][model_name]
            object = admin_class.model.objects.get(id=object_id)
            form = forms.create_dynamic_modelform(admin_class.model, admin_class=admin_class, form_create=False)
            if request.method == "GET":
                form_obj = form(instance=object)
            elif request.method == "POST":
                form_obj = form(instance=object, data=request.POST)
                if form_obj.is_valid():
                    form_obj.save()

    if no_render:  # 被其它函数调用,只返回数据
        return locals()
    else:
        return render(request, 'luffyadmin/table_object_change.html', locals())