小编cdu*_*ruk的帖子

关于删除通过ORM sqlalchemy.orm.exc.StaleDataError插入的项目的SQLAlchemy StaleDataError

我有一个问题,我得到一个错误,如这个:

"MyPyramidApplication Error"<class 'sqlalchemy.orm.exc.StaleDataError'>: DELETE statement on table 'page_view' expected to delete 6 row(s); Only 0 were matched.
Run Code Online (Sandbox Code Playgroud)

所以,我很清楚是什么导致了这个问题,但我一直无法解决它.

我有一个page_view模型,它有一个外键page_id和a user_id.

这是模型的样子:

page_view_table = sa.Table(
   'page_view',
    metadata,
    sa.Column('id', sa.Integer, primary_key=True),
    sa.Column('page_id', sa.Integer, sa.ForeignKey('guide.id')),
    sa.Column('user_id', sa.Integer, sa.ForeignKey('user.id')),
    sa.Column('last_view', sa.DateTime, nullable=False),
    sa.UniqueConstraint('user_id', 'page_id'),
    mysql_engine='InnoDB',
    mysql_charset='utf8mb4'
)
Run Code Online (Sandbox Code Playgroud)

这是关系的样子

orm.mapper(Page, page_table,
    properties = {
        'users_viewed': sa.orm.relation(
            User,
            secondary=page_view_table,
            backref='page'),
    }
)
Run Code Online (Sandbox Code Playgroud)

我使用insert语句将一些项添加到我的数据库,类似于:

ins = model.page_view_table.insert()
sql = str(ins)
sql += ' ON DUPLICATE KEY UPDATE last_view = :last_view'
session = model.Session() …
Run Code Online (Sandbox Code Playgroud)

python mysql database sqlalchemy pyramid

14
推荐指数
1
解决办法
5478
查看次数

为什么Python比Ruby更快?

它们似乎有很多相同的特性,但据我所知,Python 2.5比1.8.7快了很多.

这背后有更深层次的原因吗?

ruby python performance programming-languages

12
推荐指数
3
解决办法
8028
查看次数

什么是事件循环?它与使用其他模型有什么不同?

我一直在研究Node.JS,所有的文档和博客都讨论了它如何使用事件循环而不是每个请求模型.

我对这种差异有一些困惑.我觉得我80%有理解但尚未完全掌握它.

javascript parallel-processing functional-programming node.js

10
推荐指数
2
解决办法
4894
查看次数

Maven Build中的未知依赖关系

我一直在尝试使用Maven来构建一个项目.该项目在我试过的几台计算机上运行良好,但在一台机器上,我有一个随机的问题.

实质上,maven正在搜索未包含在pom.xml文件或settings.xml文件中的依赖项.

我试过mvn依赖:purge-local-repository但是仍无济于事; 我仍然坚持在寻找依赖的mvn我不知道它在哪里.

maven-2

5
推荐指数
1
解决办法
2938
查看次数