运行时错误:从数据库中获取多边形点时调用Python对象时超出了最大递归深度

2024-09-30 14:26:38 发布

您现在位置:Python中文网/ 问答频道 /正文

当用户点击地图时,我试图在google地图上绘制存储的多边形点。我使用postgres数据库。我成功地将多边形存储到数据库中。当我试图自动绘制多边形点时,我得到了一个递归错误。这是我的密码

class drawPolygon(Base):

    __tablename__ = "tbl_data_area"      

    id =  Column(Integer, nullable=False, primary_key=True)
    area = Column(Geometry('Polygon'))
    name = Column( Text )

    _poly  = None

    def getPoly(self):
        if not self._poly:
            self._poly = to_shape(self.area)//i get error here
        return self._poly

    def getAreaPoints(self):
        return self.getPoly().area
    area = property(getAreaPoints)          

我不知道怎么回事自身区域. 当线条自身。多边形=形状(自身区域)当调用Python对象时,执行以下错误:超出了最大递归深度。我被这个打动了。谁能帮忙吗。在


Tags: 用户self数据库区域returndef错误地图
1条回答
网友
1楼 · 发布于 2024-09-30 14:26:38

您有一个名为area的列和属性:

area = Column(Geometry('Polygon'))

# ...

def getAreaPoints(self):
    return self.getPoly().area
area = property(getAreaPoints)          

后者取代了前者。因此,self.getPoly()在访问self.area时使用属性,并且该属性再次调用self.getPoly()。在

如果要在getPoly()方法中使用列,请重命名列或属性。在

相关问题 更多 >