-1

我正在尝试使用 django 和 python 请求使用从该网站获得的授权标头和正文向该端点发出发布请求。

我需要你的帮助来解决这个问题并使这段代码正常工作。手机号码和其他字段应该采用我的 django 表单和模型输入。

 class RechargeData(models.Model, Main):
         user = models.ForeignKey(User, default=1,on_delete=models.CASCADE)
         phone_number = models.CharField(validators=[Main.phone_regex], max_length=10) 
         network = models.CharField(choices=Main.OPERATORS, max_length=15)
         plan = models.IntegerField(choices=Main.PLANS)
         amount = models.DecimalField(max_digits=10, decimal_places=2)  

视图.py

import requests
import json
from .forms import RechargeForm

def rechargedata(request):
      url = "http://127.0.0.1:8000/api/data/"
      payload = "{\"network\": network_id,\n\"mobile_number\": \"09037346247\",\n\"plan\": plan_id}" 
      headers = {'Authorization': 'Token 5fd60vcdfddfxddsssfddff9a0a8742d','Content-Type': 'application/json'}

      response = requests.request("POST", url, headers=headers, data=payload)

      if request.method == "POST":
          form = RechargeForm(request.POST)
          if form.is_valid():
              phone_number = form.cleaned_data['phone_number']
              network = form.cleaned_data['network']
              amount = form.cleaned_data['amount']
              plan = form.cleaned_data['plan']
          form.save

          context = RequestContext(request, {
              'phone_number': responsedata.mobile_number,
              'network': response.data.network_id, 
              'mobile_number': response.data.network_id,
              'plan': response.data.plan_id,
              })
           return render(request, 'embeds.html', {'context': context, 'form'; form})
       else:
            form = RechargeForm()

       return render(request, 'index.html', {'context': context, 'form'; form})

我该如何解决?

4

0 回答 0