django+layui+js 动态获取复选框的值,前端上传及后端获取复选框的值

自用运维平台的权限系统中有涉及到一个用户管理的功能,其中包含了用户的角色修改,用户和角色是多对多的关系,前端编辑界面的角色展示为了减少更新麻烦,采用动态从后端获取角色列表,这样后端修改也不需要前端去做更新,管理界面的配置用户角色的地方需要用到复选框,因为是多对多,这里用js去完成修改后赋值到初始字段中,使后端可以轻易的读取,

前端用户管理界面

在这里插入图片描述
点击编辑按钮,弹出对应的用户信息,这里是之前写的如何给子页面赋值
在这里插入图片描述
可以看到这里的角色是可以多选的,而且这些选项是动态从后端获取的。

动态获取角色(获取复选框)

由于这个编辑按钮是在用户管理这个界面,所以我在后端定义了当用户管理界面模板有请求时就会把数据库的所有roles以列表的形式存到session中,所以当用户去点击编辑时,session中已包含角色的相关值,前端模板再从session获取遍历取值动态展示

访问用户管理界面时,后端django代码

#用户管理模板
def index(request):
    if request.method == 'GET':
        # 添加到操作记录
        act_data = "访问用户界面"
        act_result = "成功"
        a = act_history(request, act_data, act_result)
        obj = Role.objects.all().values("title")
        roles_list = [i['title'] for i in obj]
        request.session["roles"]= roles_list
        print(roles_list)
        return render(request,'web/user/user.html')

前端编辑页面动态获取角色的代码

<div class="layui-form-item">
        <label class="layui-form-label">所属角色</label>
            <div class="layui-input-block">
                {% for i in request.session.roles%}
                    <input type="checkbox" name="roles" title="{
    {i}}" value="{
    {i}}
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在Django中使用LayUI和MySQL来展示数据表格,你需要进行以下步骤: 1. 配置数据库:首先,确保你已经按照之前提到的步骤正确配置了Django项目中的MySQL数据库。 2. 创建数据模型:在Django的模型文件(`models.py`)中定义你的数据模型,然后运行迁移命令将模型映射到数据库中。例如,创建一个简单的学生模型: ```python from django.db import models class Student(models.Model): name = models.CharField(max_length=100) age = models.IntegerField() ``` 3. 创建视图函数:在视图文件(`views.py`)中创建处理数据展示的视图函数。该函数从数据库中获取数据,并将其递给模板以渲染。例如: ```python from django.shortcuts import render from .models import Student def student_list(request): students = Student.objects.all() return render(request, 'student_list.html', {'students': students}) ``` 4. 创建模板文件:在模板文件中(`student_list.html`),使用LayUI的表格组件来展示学生数据。例如: ```html {% extends 'base.html' %} {% block content %} <table class="layui-table"> <thead> <tr> <th>姓名</th> <th>年龄</th> </tr> </thead> <tbody> {% for student in students %} <tr> <td>{{ student.name }}</td> <td>{{ student.age }}</td> </tr> {% endfor %} </tbody> </table> {% endblock %} ``` 5. 配置URL映射:在URL配置文件(`urls.py`)中,将URL映射到视图函数。例如: ```python from django.urls import path from .views import student_list urlpatterns = [ path('students/', student_list, name='student_list'), ] ``` 这样,当访问`http://localhost:8000/students/`时,你将会看到使用LayUI表格展示的学生数据。 请确保已经正确加载LayUI的CSS和JS文件,以及引入了必要的LayUI样式和组件。如果你还没有引入LayUI的文件,请按照之前提到的步骤将LayUI的文件下载并放置在Django项目的静态文件目录中。 希望以上步骤能帮助你在Django中使用LayUI和MySQL来展示数据表格。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蒙多不减肥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值