这是一个有点复杂、抽象的问题,如果不够具体,请原谅我。
我已经多次遇到特定类型的问题:一方面,数据源用于定期以自动化方式更新某个数据结构,但另一方面,利益相关者希望能够手动覆盖自动输入。
例子:
您有一个产品列表,这些产品由一些使用外部数据源(产品数据库等)的自动化脚本保持最新(标题、描述等)。
假设在您的数据源中有一个烤面包机“Freshtoast XYZ 300”,如果它的名称更改为“FreshToast!XYZ-300”,您希望将该更新传播到您自己的(不同结构的)产品模型中。
同时,如果一位同事不喜欢“Freshtoast XYZ 300”这个名称并想将其更改为“Freshtoast 的 Toaster XYZ 300”(手动),您不想自动覆盖该更改(他会生气),但您也不想简单地忽略更新的名称,因为如果同事知道更改,他会将名称调整为“FreshToast 的 Toaster XYZ-300!”。
“考虑”更新数据源的最佳方法是什么——即使是被覆盖的数据——同时仍然允许手动覆盖?
PS:我主要使用Ruby / Rails,但我想这个问题很笼统。此外,需要明确的是,自动更新是规则,而手动覆盖是这种情况下的例外。因此,假设每天更新 200,000 个产品,其中只有 20 个具有手动覆盖的标题。因此,例如,必须批准每一个更新不是一种选择。