Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将Javascript值解析为Django视图_Javascript_Python_Django_Google Maps - Fatal编程技术网

将Javascript值解析为Django视图

将Javascript值解析为Django视图,javascript,python,django,google-maps,Javascript,Python,Django,Google Maps,我是Django的新手,我只是想弄明白,我确实在官方的Django谷歌群中发布了它,但没有答案。我正在Django模板中使用GoogleMapAPI进行地理定位,我打算在Django模板中从JavaScript提取信息后动态填充DB表。代码如下: var map, infoWindow; function initMap() { map = new google.maps.Map(document.getElementById('map'), { center: {lat

我是Django的新手,我只是想弄明白,我确实在官方的Django谷歌群中发布了它,但没有答案。我正在Django模板中使用GoogleMapAPI进行地理定位,我打算在Django模板中从JavaScript提取信息后动态填充DB表。代码如下:

var map, infoWindow;
  function initMap() {
    map = new google.maps.Map(document.getElementById('map'), {
      center: {lat: -34.397, lng: 150.644},
      zoom: 6
    });
    infoWindow = new google.maps.InfoWindow;

    // Try HTML5 geolocation.
    if (navigator.geolocation) {
      navigator.geolocation.getCurrentPosition(function(position) {
        var pos = {
          lat: position.coords.latitude,
          lng: position.coords.longitude
        };

        infoWindow.setPosition(pos);
        infoWindow.setContent('Location found.');
        infoWindow.open(map);
        map.setCenter(pos);
      }, function() {
        handleLocationError(true, infoWindow, map.getCenter());
      });
    } else {
      // Browser doesn't support Geolocation
      handleLocationError(false, infoWindow, map.getCenter());
    }
  }

  function handleLocationError(browserHasGeolocation, infoWindow, pos) {
    infoWindow.setPosition(pos);
    infoWindow.setContent(browserHasGeolocation ?
                          'Error: The Geolocation service failed.' :
                          'Error: Your browser doesn\'t support geolocation.');
    infoWindow.open(map);
  }
我需要在我的模型中以人类可读的格式保存经度和纬度以及关于位置的地理位置信息。我的模型是

class Address(models.Model):
   user = models.ForeignKey(settings.AUTH_USER_MODEL, models.CASCADE)
   latitude = models.CharField(max_length=10)
   longitude = models.CharField(max_length=10)
   address = models.CharField(max_length=100)
   .....
我的表格是:

class UserAddressForm(forms.ModelForm):
     class Meta:
            model = Address
            fields = ['latitude', 'longitude', 'address'}
我需要以我的观点来思考如何去做。
如果有人能告诉我正确的方向,那就太好了,因为作为新手,我真的很难弄明白。我没有足够的声誉来评论为什么我要回答我从中理解的问题,请不要介意

我在做实时外汇数据流显示时也遇到了同样的问题。你可以做一件事。我所做的是相反的方法(我不知道怎么做)

  • 使用GoogleAPI编写python脚本以访问这些详细信息 并收集它
  • 将其存储在数据库中。然后通过Django restframework将此数据传递给模板
  • 您现在可以在js中访问这些数据

  • 您可以使用set interval函数进行ajax调用 每间隔刷新一次。 若你们这样做,它将调用你们的视图函数,每个特定的间隔,所以它将被保存在db over model中,并显示在模板中

  • 我希望有帮助

    def fx(request):
    #template = loader.get_template('fx.html')
    template = loader.get_template('fx.html')
    fj = fxdata()
    r0 = fj[0]
    r1 = fj[1]
    r2 = fj[2]
    r3 = fj[3]
    r4 = fj[4]
    r5 = fj[5]
    r6 = fj[6]
    
    
    # context = {"Symbol": sym, "Time":time, "Ask":ask, "Bid":bid,"High":high,"low":low,"Close":close}
    context = {"R0":r0, "R1":r1, "R2":r2, "R3":r3, "R4":r4, "R5":r5, "R6":r6}
    
    for key, index in context.items():
        a=context[key]
        forex_instance = forex.objects.create(symbol=str(a[0]),datetime = str(a[1]), ask = float(a[2]), bid = float(a[3]), high = float(a[4]),low = float(a[5]), close=float(a[6]) )
    
    
    
    html = template.render(context)
    return HttpResponse(html)
    
    在此视图中,函数
    fj=fxdata()
    同时,我试图在模板中显示这些数据,所以我使用了
    html=template.render(context)
    通过HttpResponse传递给模板的上下文词典

    然后我在同一个模板上使用divid对setInterval进行了Ajax调用

    因此,它开始刷新模板。它在每次刷新时调用view函数。数据也一直存储在数据库中


    然后,我使用了Django rest框架将这些数据导出到JS

    我没有找到任何示例,我尝试了自己的示例,结果成功了。我的目标是从truefx和dumb数据库中提取数据,然后在模板中显示为表。