繁体   English   中英

Rails中Postgres JSON字段的发布/订阅

[英]Pub/Sub for Postgres JSON field in Rails

我在名为Quote的模型上有一个名为data的字段。 列类型是一个JSON对象,它存储可能引用其他字段的各种字段。 我需要使这些相关字段以及其他模型保持同步。

例如,随时更新income.residential_income.totalincome.commercial_income.total时 ,需要更新income.total 后端是否应该更新所有相关字段? 前端跟踪这些更改并向后端提供数据是否有意义? 我可以使用pub / sub来监视同一模型上的多个字段以更新这些关系吗? 我不清楚实现此功能的最好的最简单方法是什么。

income: {
  total: 250
  residential_income: {
    total: 100
  },

  commercial_income: {
    total: 150
  }
}

当您说PUB / SUB时,我假设您是在谈论postgres的LISTEN / NOTIFY功能? 我不会在您的情况下使用它,当监听进程崩溃,尚未启动,无法重新启动,无法访问时,很容易失去同步。

使用触发器并更新数据库中的字段

要么

让代码更新两个收入字段之一,然后计算总数。

要么

首先不存储总计,并在需要时进行计算

由于收入值是通过前端更改的,因此您可以轻松地同时更新总计。 这将确保DB中的值与应用程序同步(在缓存时很重要),并确保尽可能少的复杂性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM