我使用带有 MongoMapper 的 Rails 3。我想在has many
关联结果中添加一些记录。
例如,user has_many posts
class User
include MongoMapper::Document
many :posts
end
默认情况下,它只会显示属于用户的帖子,但如果他/她在查询中指定了特殊选项(或在用户的设置菜单中,比如说show-commented=true
),那么我还需要在用户留下任何评论的地方添加帖子。所以我认为重写posts
方法
def posts
super + (show_commented_posts ? commented_posts : [])
end
但它当然行不通。如何使用 mongo_mapper 正确覆盖此方法?或者有没有更好的方法来解决这个问题?