gpt4 book ai didi

extjs - 存储同步 : Many deletions, 一些失败

转载 作者:行者123 更新时间:2023-12-02 04:35:31 24 4
gpt4 key购买 nike

我有一个商店,用户可以在其中通过单个 destroy 操作删除多条记录。

现在,其中一些记录被锁定在数据库中(因为其他人正在处理它们),因此无法删除。服务器如何告诉前端删除Id为a、b、c的记录成功,但Id为x、y、z的记录无法删除,应该移回store并显示在网格中?

ExtJS 存储应该在 sync() 之后知道哪些记录确实在服务器端被删除,哪些没有。

最佳答案

我认为这个问题没有直接的解决方案。我选择了以下解决方法:

记录现在有一个默认设置为 false 的“IsDeleted”标志:

fields:[{
...
},{
name: 'IsDeleted'
type: 'bool',
defaultValue: false

商店有一个过滤器,可以隐藏标志设置为 true 的条目:

filters:[{
property:'IsDeleted',
value:false
}]

当用户选择删除时,我不会从存储中删除条目,而是将 IsDeleted 标志设置为 true这些条目。过滤器使用户认为该条目已被删除。

当存储同步时,它会执行更新操作,而不是销毁操作。因此,API 的更新端点必须删除所有将 IsDeleted 传输为 true 的条目。如果它不能从数据库中删除条目,则返回给客户端的相应 json 将 IsDeleted 设置为 false,以便前端知道删除该条目的失败。

关于extjs - 存储同步 : Many deletions, 一些失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43652956/

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