轨道中是否使用了视图模型?

我开始在轨道上开发一个ruby的小应用程序,并且出现了许多问题。 我应该说我有大约1年的ASP.NET MVC经验,并且在家里有模型视图和控制器。 我一直在广泛使用视图模型(在AutoMapper的帮助下),现在想知道视图模型是否在rails camp中使用类似。

从各种示例(主要是rails演员)我收集到,通常在视图中组合来自多个模型的数据(在ASP.NET MVC中不赞成),或者在模型上使用虚拟属性来获取“缺失” “数据。

我知道商业模型不应该在UI需求之后建模,例如模型中不应该有“密码确认”属性,这应该是视图模型属性。

Rails虚拟属性似乎违反了这个原则。

怎么在铁轨上完成?

谢谢。

如果我正确地理解了View Model的概念,那么这个概念在Rails中并不是很明显,但它既不被禁止/皱眉,也不被允许。 没有特别要求将模型完美地一对一映射到表中,这样您就可以自由地在适当的抽象级别上工作。

我不认为在视图中引用多个模型被认为特别糟糕(如果是,那么我有一些区域需要一些返工)虽然从单个视图更新多个模型可能会有点棘手。

无论如何,在Rails中我认为我们正在讨论的似乎主要被称为“演示者”模式。 一些引用(谷歌“Rails Presenter模式”超出你可能想要或需要的):