【发布时间】:2018-09-13 17:25:53
【问题描述】:
好的,所以我已经做了一段时间了,但我似乎没有取得任何进展。我正在使用 Nginx 和 uwsgi 运行 Django 应用程序。我有一个 http.post,我什至试图阅读我不断出错的项目。
这就是我的 JS 代码的样子:
$scope.receipt_pay_update = function(items)
{
response = confirm("Do you want to continue with the changes?");
if(!response){
return;
}
var data = {
'items': items,
'time_now': moment().format("YYYY-MM-DD")
};
items.showmessage = true;
console.log(data)
$http.post("/foodhub/dashboard/receipt_pay_modal_update", data,{
data: JSON
}).
success(function(data,status,headers,config){
$scope.alertclass = 'alert-success';
$scope.save_message_farmer = "Succcessfully update payment"
console.log("SAVED!")
}).
error(function(data,status,headers,config){
$scope.alertclass = 'alert-danger';
$scope.save_message_farmer= "Failed to update inventory, please try again"
})
}
这就是我的 views.py 的样子:
@login_required
def receipt_pay_modal_update(request):
import sys
reload(sys)
sys.setdefaultencoding('utf8')
data = json.loads(request.body)['items']
print data
rec = ReceiverActions.objets.get(identifier = data[0]['identifier'])
rec['paid_check'] = data[0]['paid_status']
rec['date_paid'] = data[0]['paid_date']
rec.save()
return HttpResponse(status=status.HTTP_200_OK)
- 我收到无法解码 JSON 的错误。所以我尝试了
data = request.body[0],但也没有用。 - 有没有其他方法可以在我的服务器上测试小的更改,而无需执行 Git 推送、Git Pull、Python -m compileall 等操作?我问的原因是因为我是通过实践教我这样做的,我觉得有更好的方法。
- 在哪里可以查看我的
print data?
任何帮助将不胜感激。
【问题讨论】:
-
我收到
File "/usr/lib/python2.7/json/decoder.py", line 384, in raw_decode raise ValueError("No JSON object could be decoded") ValueError: No JSON object could be decoded -
试试
print request.body看看body是否为空 -
好像是空的。除非我做错了什么。在我发出请求之前的
console.log(data)有数据。 -
你的 JS 代码有问题
标签: javascript python django http ubuntu