Skip to main content
 首页 » 编程设计

python之如何判断 plone 中的 AT 对象中的字段值是否已更改

2025年05月04日9exmyth

我在 Plone 中有一个 AT 内容类型。它有许多字段,包括一个文件字段。当用户编辑此类对象时,如何判断是否上传了新文件?

就此而言,我如何判断是否有任何字段已更改?

我目前正在使用订阅者挂接到 IObjectEditedEvent 以在对象更改后执行一些操作 - 我可以在这里执行这些操作吗?

请您参考如下方法:

是的,IObjectEditedEvent(IObjectModifiedEvent 的直接子类)在更改 Archetypes 内容对象时发出。

但是,事件本身不会告诉您是否上传了新文件。但是,应该可以获取请求(例如,context.REQUEST 应该通过获取为您提供当前请求)并查看那里是否有与该字段匹配的文件对象。如果是,则用户为该字段上传了一个新文件,FileField 将被更新。