CakePHP 支持乐观锁吗?

发布于 2024-07-16 06:49:20 字数 426 浏览 5 评论 0原文

我刚刚开始使用 CakePHP,我找不到任何对实现乐观锁定方案的支持。 我能找到的最接近的是对此的评论 CakePHP 博客文章 说它在 2008 年 6 月不受支持。

有谁知道这是否已经改变,或者是否有人发布了扩展或教程自己如何实施?

有关乐观锁定的说明,请参阅此答案

I'm just starting out with CakePHP, and I can't find any support for implementing an optimistic locking scheme. The closest I could find was a comment on this CakePHP blog post saying that it wasn't supported in June 2008.

Does anyone know if that has changed, or if someone has published an extension or a tutorial on how to implement it yourself?

For a description of optimistic locking, see this answer.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

过潦 2024-07-23 06:49:20

不在核心中,经过快速谷歌搜索后,似乎没有人在分享行为< /a> 如果他们做了一个。 这就是我建议的策略。

Not in the Core, and after a quick google it doesn appear that anyone is sharing a behavior if they made one. That would be my suggested tactic.

百变从容 2024-07-23 06:49:20

在“实用 CakePHP 项目”一书中的第 10 章中,给出了一些代码,用于使您的拥有“魔法领域”。 其中之一是乐观锁定领域。 我还没有尝试过,但实际上看起来相当不错。

In the book "Practical CakePHP Projects" on chapter 10 is some code given to make your own "Magic Fields". One of them is a field for optimistic locking. I haven't tried it yet, but it looks quite good actually.

沉溺在你眼里的海 2024-07-23 06:49:20

Tadashi Nakamura 在 GitHub 上发布了 OptimisticLock 行为。 它并不十分完美,因为它在写入更改的记录之前查询最后修改的日期。 这会让您要么默默地覆盖其他用户的更改,要么陷入僵局。 当我尝试编写这样的行为时,我想在更新的 where 子句中包含上次修改日期,如果受影响的行为零,则会失败。 当时,不支持向更新查询添加额外条件。 我最近没有使用PHP,所以我不知道是否有改变。

Tadashi Nakamura has posted an OptimisticLock behaviour on GitHub. It's not quite perfect, because it does the query for the last modified date before writing the changed record. That leaves you open to either silently overwriting another user's changes or hitting a deadlock. When I tried to write a behaviour like this, I wanted to include the last modified date in the update's where clause and fail if the rows affected is zero. At that time, there was no support for adding an extra condition to an update query. I haven't used PHP lately, so I don't know if that has changed.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文