下面是我有一个集成测试的一部分:如何知道何时在Rails中“刷新”我的模型对象?
user = User.first
assert !user.is_active?
get confirm_email_user_url(user),:confirmId => user.mail_confirmation_hash
assert_equal response.status,200
# because confirm_email_user_url modifies the activation state of the object
user = User.first
assert_equal user.state,"activated"
我度过的最后一个小时的调试这个:)。在我的初始版本中,在confirm_email_user_url被访问后,我没有重新初始化user
,并且即使用户被激活,状态也始终为inactive
。
如何知道我是否应该“重新加载”(缺少更好的名称)模型对象?我应该怎么打电话才能这样做?
确实,重新加载是合适的术语,你可以使用user.reload – apneadiving 2011-04-01 23:13:22
可能是有用的:http://www.alexanderinteractive.com/blog/2009/02/tip-reloading-activerecord-instances/ – apneadiving 2011-04-01 23:19:11