gpt4 book ai didi

jquery - 呈现时,该行已被另一个事务更新或删除

转载 作者:行者123 更新时间:2023-12-02 15:29:17 24 4
gpt4 key购买 nike

我有一个像两个管理员这样的项目结构,可以查看一个患者的详细信息,因此当两个管理员同时查找同一患者的详细信息时(考虑健康状况)。我得到像这样的异常

Row was updated or deleted by another transaction

调试后,在 controller端没有问题,但是在 gsp中,有一个 service call延迟了gsp的渲染过程,因此当另一个管理员尝试渲染同一gsp时,此异常会自动出现。

注意1:我无法避免通过gsp进行该服务调用。

注意2:没有保存或更新操作-因此,诸如merge()或lock()之类的解决方案几乎无法工作

我的问题:是否有任何方法可以使该请求等待此渲染过程结束?或其他任何避免此异常的方式。

代码段
def test = testService.getAllLogs(id, startDate, endDate)
render(view:"test",model:[test: test])

最佳答案

如果问题确实是由于 View 操作而没有发生任何编辑而引起的,则可能是您进行了一些修改,而grails正在尝试为您自动保存。

在gsp或 Controller 中查找有关域对象的列表排序,如果没有真正改变,该列表将导致更新。您也可以在数据库中查看,并查看页面 View 上的version列是否正在更新。

现在,如果真正的问题是编辑在多个位置进行,则有几种选择。将域模型更细致地分解,以限制编辑的冲突。或确保将所有更改从服务器推回到实时页面。

关于jquery - 呈现时,该行已被另一个事务更新或删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22246987/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com