python做数据库button_如何让一个按钮点击更新数据库并重定向到Django中的视图?...

我已经为此挣扎了一段时间,任何帮助都将不胜感激!在

基本上,我想做的是在Django中单击一个HTML按钮,更改数据库中的一个字段(主键有问题的对象),然后重定向回home。在

清晰的例子:

目前,我正在url:http://127.0.0.1:8000/result/edit/1/工作。/1/是我要更改的模型的主键。该模型是一个自定义组模型,具有一个名为“status”的字段。状态可以是“已批准”或“未批准”:status = models.CharField(max_length=30, default=Status.not_sent, choices=Status.choices(), null=False)

在url result/edit/1/I中有一个“Approve”按钮。当我单击按钮时,我想更改模型中的状态,并将其保存在数据库中。另外,在改变状态后,我想重定向回主页。我在views中编写了以下方法:

^{pr2}$

在html中,我创建了以下按钮:

Approve

我的理由是按钮应该调用这个URL,它应该再次调用视图中的函数:url(r'^result/approve/(?P\d+)/$', views.approve_group, name

='approve_group'),

不幸的是,这只是给出了一个NoReverseMatch错误,我不确定如何继续。在

感谢您抽出时间!在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Django ,你可以使用 Django 的 `FileField` 字段来处理文件上传。 以下是一个简单的示例: 1. 在你的 `models.py` 定义一个模型: ```python from django.db import models class File(models.Model): file = models.FileField(upload_to='uploads/') ``` 在这个例子,我们定义了一个 `File` 模型,它有一个 `FileField` 字段,文件将被上传到 `uploads/` 文件夹。 2. 创建一个表单来处理文件上传: ```python from django import forms from .models import File class FileForm(forms.ModelForm): class Meta: model = File fields = ('file',) ``` 3. 在视图处理文件上传: ```python from django.shortcuts import render from .forms import FileForm def upload_file(request): if request.method == 'POST': form = FileForm(request.POST, request.FILES) if form.is_valid(): form.save() return render(request, 'success.html') else: form = FileForm() return render(request, 'upload.html', {'form': form}) ``` 在这个例子,我们首先检查请求的方法是否为 POST。如果是,我们将创建一个 `FileForm` 的实例,并将请求的数据传递给它。如果表单有效,我们将保存文件并重定向到成功页面。如果请求的方法为 GET,则创建一个空表单,并将其传递给模板。 4. 创建一个模板来呈现表单: ```html {% extends "base.html" %} {% block content %} <h2>Upload File</h2> <form method="post" enctype="multipart/form-data"> {% csrf_token %} {{ form.as_p }} <button type="submit">Upload</button> </form> {% endblock %} ``` 在这个例子,我们使用 Django 的模板语言来呈现表单。我们将表单的 `enctype` 属性设置为 `multipart/form-data`,这是必需的,因为我们将上传文件。我们还包括了一个 CSRF 令牌,以确保表单是安全的。最后,我们使用 `form.as_p` 来呈现表单的 HTML。 这就是一个基本的文件上传示例。当用户提交表单时,文件将被上传并保存到服务器的指定文件夹
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值