Устранение неполадок HTTP-запроса и JSON-сообщения на Django - PullRequest
0 голосов
/ 13 сентября 2018

Ладно, так я давно этим занимаюсь, и, похоже, я никуда не денусь.Я запускаю приложение Django с Nginx и UWSGI.У меня есть 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)
  1. Я получил ошибку при невозможности декодировать JSON.Поэтому я попробовал data = request.body[0], который тоже не работал.
  2. Есть ли другой способ проверить небольшие изменения на моем сервере, не выполняя Git push, Git Pull, Python -m compileall.,так далее?Причина, по которой я спрашиваю, заключается в том, что меня научили делать это таким образом на практике, и я чувствую, что есть лучший способ.
  3. Где я могу проверить свой print data?

ЛюбойПомощь будет высоко ценится.

1 Ответ

0 голосов
/ 14 сентября 2018

Оказывается, data, который я получал, не подходил JSON.Я вернулся и изменил запрос на отправку данных как json, и он отлично работал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...