分享 同个项目不同分支的诡异报错

jevanwu · 2014年12月19日 · 1589 次阅读

昨天在 staging 分支遇到个报错 但是切到 master 分支上 发现能够跑的很顺畅... 于是 就把两个分支报错的代码拿来对比 结果发现一模一样...

后来通过 console 进行测试 一个 order 的 state 里为 nil 导致的 但是为什么 master 分支不会报错呢 用的数据库都一样的啊!

后来经过一段时间的调试 发现 是自己用的两个 Gem enumerizestate_machine 都对 state 字段做了操作 可能是因为 gem 冲突的原因 导致的这个结果 (而且就一条纪录是这样的...)

以后大家如遇到类似情况 相同的数据库 相同的字段的内容不一样 可以用 .#{attribute}_before_type_cast 这个方法来查看数据库里该字段的原始值是什么 ( 例:本人此处为 order.state_before_type_cast )

发现差异后 相信大家很快就能理清头绪了

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