找回密码
 立即注册

QQ登录

只需一步,快速开始

guoqp
高级会员   /  发表于:2024-4-8 19:27:06
11#
Patrick.Zhu 发表于 2024-4-8 18:24
你这么说下来,这个功能就不好做了,因为,提交按钮,和附件单元格,没有绑定关系的。如果是在提交按钮的时 ...

拿到两个数组,新增一个,删除一个,分别循环处理即可
如果用值对比,该如何实现取两个字符串的不同集合呢
回复 使用道具 举报
Patrick.Zhu
银牌会员   /  发表于:2024-4-10 11:17:29
12#
我们讨论了一下,首先,这种文件本身是动态,还可以可修改的情况下,还需要实时备份的情况,不是很多见,常见的情况是,文件封存了,然后进行备份。
在你这个背景上,为什么不能直接用新的附件内容覆盖备份表上的附件。或者是,两边的记录都连一个实际的附件文件夹。再或者是,本身就定期备份你原始表链接的这个附件文件夹本身。
回复 使用道具 举报
guoqp
高级会员   /  发表于:2024-4-10 15:54:44
13#
本帖最后由 guoqp 于 2024-4-10 16:01 编辑
Patrick.Zhu 发表于 2024-4-10 11:17
我们讨论了一下,首先,这种文件本身是动态,还可以可修改的情况下,还需要实时备份的情况,不是很多见,常 ...

其实解决这个需求就一个难点,就是要记录用户删除了哪些文件,添加文件是很好解决的,逐一比较就行了。

下边我以实际操作来说明:

比如说:第一次上传了A、B、C三个文件,那同步目录也有A、B、C三个文件

然后第二次用户上去删除了B文件,我们该如何才能同步删除B文件呢?如果用新记录去比较,新记录只有A、C两个文件,所以不知道还有一个B文件,明显行不通。

(如果这里非要去讨论同步文件的场景是否正常,我觉得没有这个必要,文件拿来同步、备份是非常正常的一个操作,我能提这个需求就已经说明有这样的场景了)

解决这个需求的关键就是记录用户删除的文件列表,我的想法是附件增加一个属性,像组件那种,记录删除文件列表,当然同样也可以弄个属性来记录添加文件列表。在用户提交保存时可以去获取这个属性,再进行相应的逻辑处理就行了。
还可以增加几个上传事件,比如上传后,删除后事件等。

当然即使没有这个功能影响也不大,先记录一个旧值,再用新值去一个一个比较也是能实现的,只是效率低一点

再回答一下你说的为啥不用覆盖的办法?
如果要用覆盖的办法那我可能需要建很多目录,覆盖前删除该目录下所有文件,再重新拷一次,这样有两个弊端,一是很多目录不是用户希望的效果,用户希望所有文件放在一个目录,二是重复拷一次是很费时间的,文件小还好,如果文件大呢,所以我提的想法是只同步修改部分(即删除与新增,这样效率才能提得起来)


回复 使用道具 举报
Patrick.Zhu
银牌会员   /  发表于:2024-4-10 18:27:01
14#
本帖最后由 Patrick.Zhu 于 2024-4-10 18:28 编辑

这个问题就绕回来了,如果是事件,就和你前面说的,只有在提交时触发所矛盾。

针对你描述的“文件拿来同步、备份是非常正常的一个操作,我能提这个需求就已经说明有这样的场景了”,我们讨论了下,同步备份是常见的,但是在修改中,保持动态跟踪、实时备份的情况,并不多见。

推荐还是用命令拆成两个数组,直接对比吧,做成标准功能,怎么想怎么别扭。如果是纯粹的添加后事件,还好理解一些


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 立即注册
返回顶部