【发布时间】:2013-11-15 20:37:11
【问题描述】:
我有一个包含一些基本实体的应用程序
帖子 帖子有:
- 喜欢
- 评论
- 和评级
然后我有一个 SQL 视图来查询所有三个。有了这个,我就有了一个名为 PostActivityView 的模型。帖子有一个活动视图,所以我可以调用
@post.activity_view
返回适当值的集合(来自 Likes、Comments 和 Ratings)。这一切正常。
我的问题是这会返回哈希图的集合,而不是评论、喜欢和评分。这是有道理的,因为我的观点是创建一个新的“PostEvents as (...)”结果。我的问题:有没有办法概括这些结果并用 ActiveRecord 对象表示它们?
Likes、Comments 和 Ratings 具有不同的属性,所以我在视图中做了一些别名(comment's have comment.body for text,Ratings 可以有 rating.cmets for text,所以在需要时我将 review.cmets 之类的东西重命名为 .body )。所以我的结果都具有相同的属性。似乎我应该能够制作一个像 PostEvent 这样的 ActiveRecord 对象,它只有别名列。这可能吗?
【问题讨论】:
标签: sql ruby-on-rails activerecord rails-postgresql sql-view