【发布时间】:2012-06-04 16:41:47
【问题描述】:
不幸的是,我可能仍然是一个 Rails 初学者,所以,即使我考虑并尝试了不同的方法,我也没有得到我想要的工作,现在不得不再次寻求帮助。
我有一个 REST 评论投票机制,每条评论都会竖起大拇指。这很好用,每个都用 counter_cache 处理来计数。现在,基于这些赞成票和反对票,我想计算每个评论的正负值,thumbs_up-votes - thumbs_down-votes。虽然我不确定这是否是处理该问题的最有效方法,但我计划将正负值作为评论模型的额外整数属性(而竖起大拇指和向下竖起大拇指是自己的模型)。所以,我基本上想要的是,当保存thumbs_up 时,评论的加减属性自动应该是+= 1,并且分别为thumbs_down.save a -= 1。
如何从 thumbs_up 控制器中发出这样的操作?我需要修改我的 form_for 还是我的方法完全错误?
是否有一个 after_save 回调来处理不同模型的属性?
【问题讨论】:
-
为什么需要 thumbs_up 控制器?根据您提供的内容,您似乎不需要存储 thumbs_up 或 thumbs_down。除非,也就是说,你想显示 thumbs_up 和 thumbs_down 的数量...
-
是的,我正在展示这些投票,此外还有 24 小时投票限制。因此,使用额外的拇指向上/向下模型更容易处理这个问题
标签: ruby-on-rails ruby-on-rails-3 model attr after-save