Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何在维护元数据的同时复制RailsEventStore事件_Ruby On Rails_Ruby_Rails Event Store - Fatal编程技术网

Ruby on rails 如何在维护元数据的同时复制RailsEventStore事件

Ruby on rails 如何在维护元数据的同时复制RailsEventStore事件,ruby-on-rails,ruby,rails-event-store,Ruby On Rails,Ruby,Rails Event Store,场景是我有两个活动模型:Invitation和Guest。 我已经将一系列事件发布到邀请的事件流中,在某个时刻,邀请被接受,随后创建了一个来宾。我想将邀请活动流上的活动复制到来宾的活动流 我曾想过使用dup复制原始事件,将流字段更新为来宾的事件流,但这将违反事件id字段的唯一约束。因此,我希望EventStore的publish机制能够处理事件的持久性 我曾想过将原始事件的数据属性复制到事件的新实例中,并使用发布,但随后我将获得元数据(请求id,远程ip,时间戳)不反映原始事件的事件,这对于保持

场景是我有两个活动模型:
Invitation
Guest
。 我已经将一系列事件发布到邀请的事件流中,在某个时刻,邀请被接受,随后创建了一个来宾。我想将邀请活动流上的活动复制到来宾的活动流

我曾想过使用
dup
复制原始事件,将流字段更新为来宾的事件流,但这将违反事件id字段的唯一约束。因此,我希望EventStore的
publish
机制能够处理事件的持久性

我曾想过将原始事件的
数据
属性复制到事件的新实例中,并使用
发布
,但随后我将获得元数据(
请求id
远程ip
时间戳
)不反映原始事件的事件,这对于保持可听性很重要


是否有某种技术可以执行RailsEventStore事件的这种传输/复制?

有一种技术-链接。在最近的Rails事件存储版本中(从v0.22.0开始),您可以将现有事件链接到其他流:。它保留了数据和元数据。

我想我实际上可以发布事件的新实例和调用
event.update(元数据:old\u event.metadata)