[英]How to delete data from database with a button using only DJANGO python, java script, and HTML?
我正在开发一个 django 项目,我的数据库是通过电话后填充的,为了提高生活质量,我希望能够通过单击按钮清除数据库中的所有数据。 如果可能的话,我只想使用 python、javascript 和 HTML。 我在这里做了一些搜索,到目前为止还没有找到任何这样的问题的答案。 这是一个没有答案的类似问题的链接。 有一个问题与我的类似,但 OP 使用的是PHP、jquery 和 SQL ,这对我来说并不理想。 我没有尝试任何代码,因为我不知道从哪里开始。 如果有人对这种事情有所了解,如果您给我一个起点,将不胜感激。
关于渲染我的表格,我使用以下 html 代码:
<table id="mytable" border="1" cellpadding="2">
<thead>
<th>Src_Fname</th>
<th>Dest_Fname</th>
<th>Bytes_Xfer</th>
<th>Xfer_Sec</th>
<th>Xfer_MBPS</th>
</thead>
<tbody id="tablebody">
{% for ftp in filetp %}
<tr>
<td>{{ ftp.Src_Fname }}</td>
<td>{{ ftp.Dest_Fname }}</td>
<td>{{ ftp.Bytes_Xfer }}</td>
<td>{{ ftp.Xfer_Sec }}</td>
<td>{{ ftp.Xfer_MBPS }}</td>
</tr>
{% endfor %}
</tbody>
</table>
这是我的views.py中的后端渲染定义
def ftptable(request):
filetp = FTP.objects.all()
return render(request,'ftp.html',{'filetp':filetp})
我的 FTP 对象只是一个将 HTML 代码中的所有变量设置为 char 字段的类。
为此,我只需发出一个 POST 请求并传递一个名为“button”的标头,其名称类似于“Delete All”。 然后在您看来,您可以按照 if request.method == "POST" and button == "Delete All":
的方式放置一些内容,以查找按下按钮的时间。 像这样的东西:
在您的模板中 -
<script>
$.ajax({
url: '//' + "/",
type: 'POST',
headers: {'X-CSRFtoken': '{{ csrf_token }}', 'button':'Delete_All'},
data: dict,
dataType: 'json'
})
</script>
您需要在此处填写您的网址,因为我无法从您上面的代码中看到它
那么,在你看来——
if request.method == "POST":
button = request.headers.get('Button')
if button == "Delete_All":
models = [list of all models here]
for model in models:
model.objects.all().delete
这应该可以很好地擦除数据库中的所有内容,但它不会重置自动递增的 id。 不知道您的应用程序的其余部分是如何布局的,因此如果您需要更完整地删除数据,请直说。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.