六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 158|回复: 0

Python Postgresql SQLAlchemy drop_all

[复制链接]

升级  8.67%

62

主题

62

主题

62

主题

举人

Rank: 3Rank: 3

积分
226
 楼主| 发表于 2013-1-30 01:33:35 | 显示全部楼层 |阅读模式
Python + Postgresql + SQLAlchemy fix: drop_all() fails due to circular references

Posted by dandriff on Friday September 12, 2008@01:31PM

Here is the fix, as described by this helpful guy:

from sqlalchemy.databases import postgres

class PGCascadeSchemaDropper(postgres.PGSchemaDropper):
     def visit_table(self, table):
        for column in table.columns:
            if column.default is not None:
                self.traverse_single(column.default)
        self.append("\nDROP TABLE " +
                    self.preparer.format_table(table) +
                    " CASCADE")
        self.execute()

postgres.dialect.schemadropper = PGCascadeSchemaDropper
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表