Ruby on rails 关于数据复制/标准化(建模)的一般问题
我有以下关系:Ruby on rails 关于数据复制/标准化(建模)的一般问题,ruby-on-rails,database,model-view-controller,Ruby On Rails,Database,Model View Controller,我有以下关系: Foo有一个条 条形码有许多条形码 Foo在酒吧里有很多Baz 现在我的问题是:我需要使用Foo.Baz,但是信息应该是冻结/静态的 我的意思是,每当Bar.Baz改变时,我不想Foo.Baz改变 本质上,Foo.Baz是在创建Foo时描述Baz的某种日志记录 我如何最好地处理这种情况 我的第一个倾向是在Foo和Baz之间创建另一个关系,但这会添加大量冗余数据,因为Bar.Baz只会偶尔更改 有更好的方法吗?您可以保持原样,然后根据时间戳创建一些作用域来获取Foo.Baz,并
- Foo
有一个
条
- 条形码有许多条形码
- Foo
Baz在酒吧里有很多
Foo.Baz
,但是信息应该是冻结/静态的
我的意思是,每当Bar.Baz
改变时,我不想Foo.Baz
改变
本质上,Foo.Baz
是在创建Foo
时描述Baz
的某种日志记录
我如何最好地处理这种情况
我的第一个倾向是在Foo
和Baz
之间创建另一个关系,但这会添加大量冗余数据,因为Bar.Baz
只会偶尔更改
有更好的方法吗?您可以保持原样,然后根据时间戳创建一些作用域来获取Foo.Baz,并且不允许更新Bar.Baz,只需创建。所以要得到Foo.Baz,你要得到最新的
Bar.Baz当Bar.Foo==Foo和Bar.Baz.created_在
我意识到这不是一个很好的解决方案,但它可能是一个起点…Bas有很多Baz所有这些Foo都让我发痒,我更喜欢一个可以抓到的例子,比如猫/鼻子/胡须:)你是说“我的第一个倾向是在Foo和Baz之间建立另一种关系”那么,这是否意味着即使Bar.Baz发生更改,原始Baz仍将保持不变?如果删除或修改Baz会发生什么情况?额外的关系在这方面没有帮助。首先,您的模式设计可能有问题。