Пример #1
0
def menu_edit(request, pk):
    '''
    编辑一级菜单
    :param request:
    :return:
    '''

    obj = models.Menu.objects.filter(id=pk).first()
    if not obj:
        return HttpResponse('菜单不存在')

    if request.method == 'GET':
        form = MenuModelForm(instance=obj)  #因为有instance=obj ,所以表单中有默认值
        return render(request, 'rbac/change.html',
                      {'form': form
                       })  #访问http://127.0.0.1:8000/rbac/role/edit/1/, 表单中有默认值

    form = MenuModelForm(instance=obj,
                         data=request.POST)  #data=request.POST 表示提交过来的数据
    if form.is_valid():
        form.save()
        return redirect(memory_reverse(
            request, 'rbac:menu_list'))  #重定向到带原始参数的URL(通过URL参数反向解析得到带参的URL)

    return render(request, 'rbac/change.html',
                  {'form': form})  #错误信息的展示 防止表单没有输入直接点保存报错
Пример #2
0
def menu_edit(request, pk):
    """
    修改菜单
    :param request:
    :param pk:
    :return:
    """
    obj = models.Menu.objects.filter(id=pk).first()
    if not obj:
        return HttpResponse('菜单不存在')
    if request.method == 'GET':
        form = MenuModelForm(instance=obj)  # instance=obj编辑页面带默认值
        return render(request, 'rbac/change.html', {
            'form': form,
            'pk': pk
        })  # memory_reverse自己写的反解析

    # POST
    form = MenuModelForm(instance=obj, data=request.POST)
    if form.is_valid():
        form.save()
        return redirect(memory_reverse(request, 'rbac:menu_list'))

    # 数据错误展示
    return render(request, 'rbac/change.html', {'form': form, 'pk': pk})
Пример #3
0
def menu_add(request):
    if request.method == 'GET':
        form = MenuModelForm()

        return render(request, 'rbac/change.html', {'form': form})

    form = MenuModelForm(request.POST)

    if form.is_valid():
        form.save()
        return redirect(urls.memory_reverse(request, 'rbac:menu_list'))

    return render(request, 'rbac/change.html', {'form': form})
Пример #4
0
def menu_add(request):
    """
    添加一级菜单
    :param request:
    :return:
    """
    if request.method == 'GET':
        form = MenuModelForm()
        return render(request, 'rbac/change.html', {'form': form})
    form = MenuModelForm(data=request.POST)
    if form.is_valid():
        form.save()
        return redirect(memory_reverse(request, 'rbac:menu-list'))
    return render(request, 'rbac/change.html', {'form': form})
Пример #5
0
def menu_edit(request, pk):
    obj = models.Menu.objects.filter(id=pk).first()
    if not obj:
        return HttpResponse('菜单不存在')
    if request.method == 'GET':
        form = MenuModelForm(instance=obj)
        return render(request, 'rbac/change.html', {'form': form})

    form = MenuModelForm(data=request.POST, instance=obj)
    if form.is_valid():
        form.save()
        url = memory_reverse(request, 'rbac:menu_list')
        return redirect(url)

    return render(request, 'rbac/change.html', {'form': form})
Пример #6
0
def menu_add(request):
    """
    添加菜单
    :param request:
    :return:
    """
    origin_url = memory_reverse_url(request, "rbac:rbac_menu_list")  # 定义需要返回的地址 前端可以通过此地址跳转
    if request.method == 'GET':  # 请求到页面,生成字段
        form = MenuModelForm()
        return render(request, 'rbac/change.html/', {'form': form, "cancel": origin_url})
    form = MenuModelForm(data=request.POST)  # 当是POST请求是,表示在增加数据
    if form.is_valid():  # 对数据进行验证
        form.save()
        return redirect(origin_url)  # 完成后,跳回到列表页面
    return render(request, 'rbac/change.html/', {'form': form, "cancel": origin_url})  # 否则返回错误信息
Пример #7
0
def menu_add(request):
    """
    新建菜单视图功能函数
    :param request:
    :return:
    """
    if request.method == "GET":
        form = MenuModelForm()
        return render(request, 'rbac/change.html', {'form': form})
    form = MenuModelForm(data=request.POST)
    if form.is_valid():
        form.save()
        url = memory_reverse(request, 'menu_list')
        return redirect(url)
    return render(request, 'rbac/change.html', {'form': form})
Пример #8
0
def menu_edit(request, pk):
    obj = models.Menu.objects.filter(id=pk).first()
    if not obj:
        return HttpResponse("菜单不存在")

    if request.method == "GET":
        form = MenuModelForm(instance=obj)

        return render(request, 'rbac/change.html', {"form": form})

    form = MenuModelForm(instance=obj, data=request.POST)
    if form.is_valid():
        form.save()
        return redirect(memory_reverse_url(request, 'rbac:menu_list'))

    return render(request, 'rbac/change.html', {"form": form})
Пример #9
0
def menu_add(request):
    """
     菜单和权限列表
    :param request:
    :return:
    """
    if request.method == 'GET':
        forms = MenuModelForm()
        return render(request, 'rbac/change.html', {'forms': forms})

    forms = MenuModelForm(data=request.POST)
    if forms.is_valid():
        forms.save()
        url = memory_reverse(request, 'rbac:menu_list')
        return redirect(url)

    return render(request, 'rbac/change.html', {'forms': forms})
Пример #10
0
def menu_add(request):
	"""

	:param request:
	:return:
	"""

	if request.method == "GET":
		form = MenuModelForm()
		return render(request, 'rbac/change.html', {'form':form})

	form = MenuModelForm(data=request.POST)
	if form.is_valid():
		form.save()
		return redirect(memory_reverse_url(request,'rbac:menu_list'))

	return render(request, 'rbac/change.html', {'form': form}) # 如果输入为空,则在form 中有errors的错误信息
Пример #11
0
def menu_edit(request, mid):
    """
    菜单信息
    :param request:
    :param mid: 菜单id
    :return:
    """
    menu_obj = Menu.objects.filter(id=mid).first()
    if not menu_obj:
        return HttpResponse('数据不存在')
    if request.method == 'GET':
        form = MenuModelForm(instance=menu_obj)
        return render(request, 'rbac/change.html', {'form': form})
    form = MenuModelForm(instance=menu_obj, data=request.POST)
    if form.is_valid():
        form.save()
        return redirect(memory_reverse(request, 'rbac:menu-list'))
    return render(request, 'rbac/change.html', {'form': form})
Пример #12
0
def menu_add(request):
    '''
    添加一级菜单
    :param request:
    :return:
    '''

    if request.method == 'GET':
        form = MenuModelForm()
        print('form:', form)
        return render(request, 'rbac/change.html', {'form': form})

    form = MenuModelForm(data=request.POST)
    if form.is_valid():
        form.save()
        return redirect(memory_reverse(request, 'rbac:menu_list'))   #重定向到带原始参数的URL(通过URL参数反向解析得到带参的URL)

    return render(request, 'rbac/change.html', {'form': form})   #防止表单没有输入直接点保存报错
Пример #13
0
def menu_edit(request, pk):
    """
       编辑
       :param request:
       :return:
       """
    origin_url = memory_reverse_url(request, "rbac:rbac_menu_list")
    obj = models.Menu.objects.filter(id=pk).first()  # 数据是否存在
    if not obj:
        return HttpResponse('菜单不存在!')  # 如果不存在,返回错误信息
    if request.method == 'GET':
        form = MenuModelForm(instance=obj)  # 返回带有数据的页面
        return render(request, 'rbac/change.html/', {'form': form, "cancel": origin_url})
    form = MenuModelForm(instance=obj, data=request.POST)  # POST表示修改了 一定要加instance=obj 否则就是增加了
    if form.is_valid():  # 验证信息
        form.save()
        return redirect(origin_url)  # 成功后返回列表页面
    return render(request, 'rbac/change.html/', {'form': form, "cancel": origin_url})  # 否则返回错误信息
Пример #14
0
def menu_edit(request, id):
    """
    编辑一级菜单视图功能函数
    :param request:
    :param id: 为当前编辑内容的 id
    :return:
    """
    obj = models.Menu.objects.filter(id=id).first()
    if not obj:
        return render(request, 'rbac/menu_error.html')
    if request.method == 'GET':
        form = MenuModelForm(instance=obj)  # instance= 表示给模板传默认值
        return render(request, 'rbac/change.html', {'form': form})
    form = MenuModelForm(instance=obj, data=request.POST)
    if form.is_valid():
        form.save()
        url = memory_reverse(request, 'menu_list')
        return redirect(url)
    return render(request, 'rbac/change.html', {'form': form})
Пример #15
0
def menu_edit(request, pk):
    """

    :param request:
    :param pk:
    :return:
    """
    obj = models.Menu.objects.filter(id=pk).first()
    if not obj:
        return HttpResponse('菜单不存在')
    if request.method == 'GET':
        form = MenuModelForm(instance=obj)
        return render(request, 'rbac/user_add.html', {'form': form})

    form = MenuModelForm(instance=obj, data=request.POST)
    if form.is_valid():
        form.save()
        return redirect(memory_reverse(request, 'rbac:menu_list'))
    return render(request, 'rbac/user_add.html', context=locals())
Пример #16
0
def menu_edit(request, pk):
    """
    编辑菜单
    :param request:
    :param pk:
    :return:
    """
    obj = models.Menu.objects.filter(id=pk).first()
    if not obj:
        return HttpResponse("菜单不存在")
    if request.method == "GET":
        form = MenuModelForm(instance=obj)  # instance 输入框默认值
        return render(request, 'rbac/menu_change.html', {'form': form})
    form = MenuModelForm(instance=obj, data=request.POST)
    if form.is_valid():
        form.save()

        return redirect(memory_reverse(request, 'rbac:menu_list'))

    return render(request, 'rbac/menu_change.html', {'form': form})
Пример #17
0
def menu_edit(request, num):
    """
    一级菜单删除
    :param request:
    :param num:
    :return:
    """
    obj = models.Menu.objects.filter(pk=num)
    url = memory_reverse(request, 'rbac:menu_list')
    if not obj.first():
        response = HttpResponse('角色不存在')
        response.status_code = 404
        return response
    if request.method == 'GET':
        form = MenuModelForm(instance=obj.first())
        return render(request, 'rbac/change.html', {'form': form})

    form = MenuModelForm(instance=obj.first(), data=request.POST)
    if form.is_valid():
        form.save()
        return redirect(url)
    return render(request, 'rbac/change.html', {'form': form})
Пример #18
0
def menu_edit(request, pk):
    """
    修改一级菜单
    :param request:
    :param pk:要修改的菜单id
    :return:
    """
    obj = models.Menu.objects.filter(id=pk).first()
    if not obj:
        return HttpResponse('菜单不存在')

    if request.method == 'GET':
        form = MenuModelForm(instance=obj)  # instance=obj : 使編輯框内帶默認值
        return render(request, 'rbac/update.html', {'form': form})

    if request.method == 'POST':
        form = MenuModelForm(instance=obj, data=request.POST)
        if form.is_valid():
            form.save()
            return redirect(memory_reverse(request, 'rbac:menu_list'))

        return render(request, 'rbac/update.html',
                      {'form': form})  # 错误信息保存在form中