ruby-on-rails - Rspec 和 'before_validation' 回调问题

标签 ruby-on-rails ruby ruby-on-rails-3 validation rspec

我正在使用 Ruby on Rails 3.0.9 和 RSpec 2。我知道使用 RSpec 和 before_validation 回调存在一些已知问题,因为 before_validation 在 spec 文件中运行时似乎不会被触发。您可以找到很多类似的问题(例如,通过执行 Google search )。

我想知道目前是否有人想出了解决这个问题的方法?

P.S.:我读到一些人建议使用模拟,其他人建议从 before_validation 切换到其他回调(例如:到 before_save) 或使用 save(:validate => false) 方法(因此跳过验证)...等等...但似乎没有人解决了“真实”的问题。 您认为在这种情况下应该如何解决问题?

最佳答案

如果您不能绕过使用模拟,请尝试使用 reload 方法重新加载您的实例,然后再进行测试。

关于ruby-on-rails - Rspec 和 'before_validation' 回调问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7455553/

相关文章:

mysql - Rails 迁移需要不可移植的 SQL

ruby-on-rails - 将 redirect_to 格式更改为 :js in Rails

ruby - 续集 gem 增量

ruby-on-rails - 测试葡萄 api。 ActionController::TestCase @controller 为 nil

ruby-on-rails - 无方法错误 : undefined method `permit' for #<Hash:0x007facebc78c98> in Rails Minitest

ruby-on-rails - 升级到 ruby​​ 1.9.2 后奇怪无法要求配置/启动

ruby - 我如何在 Ruby 中始终向下舍入数字?

ruby-on-rails - rails : sort a has_many using :order is not working due to order by timestamp

ruby-on-rails-3 - 在 Rails 3 中创建 Controller /路由/ View 的最简单方法是什么?

ruby-on-rails-3 - 设置 ruby​​-rvm (1.6.9-0ubuntu2) ...错误