我一直收到这个错误:
TypeError at /
<Section: BILAY - 001> is not JSON serializable
在我的视图.py公司名称:
^{2}$在我的模型.py公司名称:
class ButuanMaps(gismodel.Model):
class Meta:
verbose_name = u'Butuan Map'
verbose_name_plural = u'Butuan Maps'
clandpin = gismodel.CharField("Land PIN", max_length=50, null=True, blank=True)
ssectionid = gismodel.ForeignKey(Section)
narea = gismodel.DecimalField(max_digits=20, decimal_places=6)
#ssectionid_id = gismodel.IntegerField()
geom = gismodel.MultiPolygonField("Geom ID", srid=32651, null=True, blank=True)
objects = gismodel.GeoManager()
def __unicode__(self):
return self.clandpin
当我在属性上添加narea
和ssectionid
时,它返回一个错误。为什么?在这一行中:
djf = Django.Django(geodjango='geom', properties= ['id','clandpin','ssectionid','narea'])
我也有同样的问题詹戈。詹戈- GeoJSON.GeoJSON()方法。在
错误很明显,它告诉您字段“不是JSON可序列化的”。在
第一个是因为它是十进制的,所以我猜它不理解你的十进制符号,它应该是昏迷或点。。。
第二个是因为它是一个外键,它不能很好地处理它。
对于最后一个问题,我的建议是从djf部分删除该属性,对其进行解码,将该属性放回类似于dictionary的json中,最后对其进行编码。在
1-Get属性
2-删除“ssectionid”属性
^{pr2}$3-解码
4-获取外键值
5-为“decod”的每个元素添加属性“ssectionid”
6-编码
我不认为这是一个好的答案,我说它有效。在
编辑
包django-geojson就是你要找的!在
相关问题 更多 >
编程相关推荐