Django 从url中动态获取参数

在这里插入图片描述

删除案例

在列表html文件中,删除的url后面添加传入的数字。
在这里插入图片描述

        {% for obj in queryset %}
          <tr>
            <th>{{obj.id}}</th>
            <td>{{obj.title}}</td>
              <td>
                  <a class="btn btn-primary btn-xs" href="/depart/{{obj.id}}/edit/">编辑</a>
                  <a class="btn btn-danger btn-xs" href="/depart/delete/?nid={{obj.id}}">删除</a>
              </td>
        {% endfor %}

view文件中,GET获取传来的nid参数,在数据库中按照id筛选,然后删除对应的元素。

在这里插入图片描述

def depart_delete(request):
    '''删除部门'''
    nid = request.GET.get('nid')   # 获取/depart/delete/?nid=1 中的数字
    models.Department.objects.filter(id=nid).delete()  # 在数据库中删除对应的元素

    return redirect('/depart/list/')  # 跳转回

编辑案例

urls文件中,这样设置url,代表中间nid为整数都可以转到该链接内容
在这里插入图片描述
点击列表编辑按钮,跳转的url按照下面这样设计。跳转到编辑页面的同时,会得到一个nid参数
在这里插入图片描述
利用此参数,可以用来传递到构造编辑页面的相关信息。
在这里插入图片描述

def depart_edit(request, nid):
    ''' 修改部门 '''
    if request.method == 'GET':
        row_object = models.Department.objects.filter(id=nid)  # 在数据库中筛选
        for i in row_object:
            row_object = i
        return render(request, 'depart_edit.html', {"row_object": row_object})

    title = request.POST.get('title')
    models.Department.objects.filter(id=nid).update(title=title)

    return redirect("/depart/list/")

编辑页面中 数据提交 更新到数据库

在这里插入图片描述
编辑的html文件中
在这里插入图片描述

在view文件中进行下面操作
在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值