Rails 关于 callback, 使用 observer 还是写 model 里呢?

linjunpop · 2012年02月28日 · 最后由 zhangyuan 回复于 2012年02月28日 · 3376 次阅读

关于 callback, 使用 observer 还是写 model 里呢?

看到 http://rails-bestpractices.com/posts/19-use-observer

依我这种 rails 新手来看,如果需求足够实现的话,就直接写 model 中,明摆着 Observer 要多成生一个类。嘿嘿。

我偏好 callback,浏览方便,不然代码改动的时候容易忘了。

跨 model 的 callback 很少见,就想到日志记录。

个人看法:

  • 如果只更新自己,那么写在 model 里
  • 如果涉及其他模型,那么写在 observer 里
  • 如果要清除缓存,放在 sweeper 里

具体问题具体做,不绝对哈。不过这种 callback 不要太多,要不然多了以后太难维护了。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号