【问题标题】:How to read the data which is coming from front end? [closed]如何读取来自前端的数据? [关闭]
【发布时间】:2017-02-11 10:16:50
【问题描述】:

我正在从前端收到 json 响应,例如

   Object {distict: "bangalore", taluka: "vijaypura", taluka2: "rural", distict1: "vijaypura", taluka3: "singagi"}

如何将数据读取到后端并保存到数据库中

我比较新鲜,所以对我有帮助

【问题讨论】:

    标签: django python-2.7


    【解决方案1】:

    取决于您发送数据的方式 1:获取

    data_rec = request.GET['distict']
    

    2:POST

    data_rec = request.POST['distict']
    

    这是一个简单的草稿代码

    @login_required
    def feed_read_body(request):
        with transaction.atomic():
            pk = int(request.GET.get('pk' ,None))
            feed = NewsFeed.objects.get(id=pk)
            return JsonResponse({'body':feed.body})
    
        return JsonResponse( {'error_msg':False})
    

    使用javascript或JQuery前端通过GET方式发送数据

    function load_text(obj){
      textedite_parent = $(obj).closest("span");
      var textedite = $(textedite_parent).find('textbody').first();
      pk = $(obj).attr('feed');
    
      $.ajax({
          url:'/api/feed/read/body/',
          data: {
              'pk': pk
          },
          type: 'get',
    
          success: function(data) {
            $(textedite).text(data.body);
            $(obj).hide();
          };
    
      });
    
    };
    

    通过 POST 发送数据。出于安全原因发布需要 CSRF-Tokens 只需将此功能添加到 ajax

      beforeSend: function(xhr, settings) {
        if (!(/^http:.*/.test(settings.url) || /^https:.*/.test(settings.url))) {
            //$(".loading").show()
            xhr.setRequestHeader("X-CSRFToken", getCookie('csrftoken'));
        }
    },
    

    并将类型从 get 更改为 post

    从cookie中获取CSRFToken使用这个函数

      function getCookie(name) {
          var cookieValue = null;
          if (document.cookie && document.cookie != '') {
              var cookies = document.cookie.split(';');
              for (var i = 0; i < cookies.length; i++) {
                  var cookie = jQuery.trim(cookies[i]);
                  // Does this cookie string begin with the name we want?
                  if (cookie.substring(0, name.length + 1) == (name + '=')) {
                      cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
                      break;
                  }
              }
          }
          return cookieValue;
      }
    

    【讨论】:

    • 它基于 POST 方法,json 数据可以从一个时间更改为另一个,因为用户选择复选框并且我想从后端动态读取它,我知道 request.POST 但动态传入的数据我如何根据该数据读取
    • 请澄清 1:您需要将数据发送到服务器并保存吗? 2:或者需要服务器(django)和主机(浏览器)之间的实时和开放连接
    • 我想获取数据并保存在数据库中,我已经向你提过,我只想要 django 代码
    • 你问错了问题,这个问题取决于很多因素——设置数据库、迁移模型、创建模型、访问视图中的模型、从数据库中添加和检索数据、django-queryset,请阅读关于 Django 模型的一些问题
    • 我都写了,只是想在python中读取json数据
    猜你喜欢
    • 2020-10-25
    • 1970-01-01
    • 2018-11-17
    • 1970-01-01
    • 1970-01-01
    • 2019-10-23
    • 1970-01-01
    • 1970-01-01
    • 2021-07-30
    相关资源
    最近更新 更多