2015-07-20 97 views
0

我是一个Django的网站上的工作分配双,和我的模型的一个定义是这样的:在Django模板

class Field(models.Model): 
    user = models.ForeignKey(User_ext) 
    name = models.CharField(max_length=50) 
    bounds = models.PolygonField() 
    date_created = models.DateTimeField(auto_now_add=True) 
    date_last_modified = models.DateTimeField(auto_now=True) 

    class Meta: 
     verbose_name = 'Field' 

    def __str__(self): 
     return self.name 

    def getAcres(self): 
     self.bounds.transform(32118) 
     acres = self.bounds.area * 0.000247105381 
     return round(acres, 2) 

    def getCenter(self): 
     center = [self.bounds.centroid.x, self.bounds.centroid.y] 
     return center 

我有一个包含一个开放的地图图层一个index.html,其中心被初始化作为这样的:

var center = ol.proj.fromLonLat([-88.455, 39.999]); 

我想这样改变这个“中心”变量将被初始化为我的领域模型的“边界”字段的中心。我试过这个:var center = {{field.0.getCenter}}但是没有奏效。是否有可能以这种方式分配变量?

+0

究竟哪里呢?你确定'field'是'Field'实例的列表吗? –

回答

0
{{ field.getCenter }} 

...但getCenter需要返回一个字符串,如 '0.112,14.123'。备选:

var center = ol.proj.fromLonLat([{{ field.bounds.centroid.x }}, {{ field.bounds.centroid.x }}]); 
0

假设fieldField模型的实例,请尝试:

var center = {{ field.getCenter }};