我目前正在使用 gem 'nested_set' 进行评论线程。
我想要做的是防止评论级别超过 2 个级别。我厌倦了这样的事情:
class Comment < ActiveRecord::Base
....
before_save :ensure_max_nestedset_level
private
# We don't want comments to go more than 2 levels deep. That's overkill
def ensure_max_nestedset_level
if self.level > 2
self.level = 2
end
end
end
但看起来你不能设置一个级别只获得一个对象级别。目标是为评论线程强制执行 2 级深度的 MAX。任何人都可以建议一种方法来强制这种情况发生吗?
用例是:
Comment Main (level 0)
Comment Reply (level 1)
Comment Reply about XXXX (level 2)
当用户回复最后一个(关于 XXXX)时,我不希望将评论设置为 3 级,我想将其限制在 2 级。
想法?谢谢