获取显示在 django admin change_list 中的数据

发布于 2024-10-11 13:05:34 字数 377 浏览 6 评论 0原文

我有一个管理员change_list,其中包含公司及其地址的列表。我想将其绘制到谷歌地图上。我已经有了谷歌地图,并且在change_list中显示了正确的数据,并且我已经复制了change_lsit模板,所以我覆盖了它。

他们的问题是我需要从页面获取数据,我假设这些数据位于 Change_list 对象中,并将其放入 JavaScript 中,以便我可以将地址绘制到地图上。

但我无法在change_list对象上找到任何doco或如何获取显示的数据。通常你可以做类似 {% model.attribute %} 的事情,如果我能够做类似的事情并将其包装在 for 循环中那就太好了。

那么关于如何获取change_list中的数据有什么想法吗?

干杯

马克

I've got an admin change_list with a list of companies and thier addresses. I want to plot this onto a google map. I've got google maps coming up, and the right data displaying in the change_list, and i've copied out the change_lsit template so Im overriding it.

They problem is that I need to get the data from the page, which I assume is in the change_list object and put that into the javascript so I can plot the addresses onto the map.

But I havent been able to find any doco on the change_list object or how to get at the data displayed. Normally you can just do something like {% model.attribute %} and if I was able to do something like that and wrap it in a for loop that would be great.

So any idea about how to get at the data in a change_list?

Cheers

Mark

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

柠北森屋 2024-10-18 13:05:34

至少有两种方法。
一种是使用 javascript 的 api 调用来获取数据。另一个,我认为你正在计划的,是将数据从change_list传递到你的模板中。这是一个例子(对于谷歌地图来说可能已经过时,但会给你这个想法)。假设change_list有两个字段lat和longt:

<div id="map" style="width: 100%; height: 300px;"></div>
<script type="text/javascript" charset="utf-8">
    if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map"));
        map.setUIToDefault();

        {% for location in change_list %} 
            var point = new GLatLng({{ location.lat|default:"0.0" }}, {{ location.longt|default:"0.0" }});
            map.addOverlay(new GMarker(point)); 
        {% endfor %}
  }
</script> 

There are at least two approaches.
One is to use an api call from javascript to get the data. The other, which is what you are planning I think, is to pass the data from change_list into your template. Here is an example (may be out of date for googlemaps, but will give you the idea). It assume change_list has two fields lat and longt:

<div id="map" style="width: 100%; height: 300px;"></div>
<script type="text/javascript" charset="utf-8">
    if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map"));
        map.setUIToDefault();

        {% for location in change_list %} 
            var point = new GLatLng({{ location.lat|default:"0.0" }}, {{ location.longt|default:"0.0" }});
            map.addOverlay(new GMarker(point)); 
        {% endfor %}
  }
</script> 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文