今天遇到个问题,Rails 项目一个表单无法提交,但是却没有任何错误信息...这个问题折腾了我几个小时...大爷的
最后我发现问题在于我的 Model 里面有个 before_save ,代码是这样的
class Post
include Mongoid::Document
field :title
field :end_on, :type => DateTime
field :closed, :type => Boolean
before_save :check_cloose_status
def check_cloose_status
self.closed = (Time.now > self.end_on)
end
end
这个代码看起来没什么问题... 注意最后行,check_cloose_status 会把 self.closed 的值作为返回值 return,如果 self.closed 是 false,那带来的问题就是 Model 无法保存。 但是这个东西太细微了,我们很容易把它忽略掉