django - 如何在视图 Django 中接收 AJAX POST 数据?
问题描述
所以我有一个名为 Print Label 的按钮,单击它时应将一些数据发送到视图,然后我的视图应在 html 页面中显示该数据。到目前为止,我似乎已经能够保存数据,因为我可以使用 JS 的 alert 方法看到它。但是,当我使用 AJAX 发布这些数据时,似乎数据没有通过,因为我的视图无法识别 POST 调用(我得到一个 404 页面)。
浏览网址:
path('label/', plabel, name="label.html"),
点击功能保存数据:
$("#table").on('click','.btn-outline-primary',function(){
// get the current row
var currentRow=$(this).closest("tr");
var col1=currentRow.find("td:eq(0)").html(); // get current row 1st table cell TD value
var col2=currentRow.find("td:eq(1)").html(); // get current row 2nd table cell TD value
var col3=currentRow.find("td:eq(2)").html(); // get current row 3rd table cell TD value
var col4=currentRow.find("td:eq(3)").html();
var col5=currentRow.find("td:eq(4)").html();
var col6=currentRow.find("td:eq(5)").html();
var col7=currentRow.find("td:eq(6)").html();
var col8=currentRow.find("td:eq(7)").html();
var col9=currentRow.find("td:eq(8)").html();
var col10=currentRow.find("td:eq(9)").html();
var col11=currentRow.find("td:eq(10)").html();
var col12=currentRow.find("td:eq(11)").html();
var col13=currentRow.find("td:eq(12)").html();
var col14=currentRow.find("td:eq(13)").html();
var mydata= [col1, col2, col3, col4, col5, col6, col7, col8, col9, col10, col11, col12, col13, col14];
AJAX 调用:
$.ajax({
url: "/label/",
type: "POST",
data:{
csrfmiddlewaretoken: '{{ csrf_token }}',
mydata: mydata},
});
alert(mydata); //this is showing my data has been saved
查看代码:
def plabel(request):
if request.method == "POST":
printlabeldata = request.POST.get('mydata' , '')
return render(request, "label.html", {'pdata': printlabeldata})
else:
raise Http404
任何帮助,将不胜感激!
解决方案
推荐阅读
- python - Firebase 甚至在相机检测到颜色字符串之前就显示颜色字符串
- javascript - 未显示在 vuetify 规则中不正确的所有验证消息
- python - 如何防止乌龟向相反方向移动
- ubuntu - 无法使用 mod_wsgi 和 Apache2 在 Ubuntu 上部署烧瓶应用程序
- python - 基于两个嵌套列表的字典一一对应列表
- python - Python中大小和内容的不同列表仍然共享id,内存重要吗?
- javascript - 使用 Vue 将字符串转换为数学运算
- kotlin - 有没有一种简单的方法可以从内部类调用父超级函数?
- python - 如何为列表中的每个 URL 创建列表/结果?
- mysql - 如何在 1-N 表关系中选择特定值或任何其他值