Ruby on rails 3 Rails 3,为什么模型更新会悄无声息地失败?如何调试数据库?

Ruby on rails 3 Rails 3,为什么模型更新会悄无声息地失败?如何调试数据库?,ruby-on-rails-3,activerecord,devise,Ruby On Rails 3,Activerecord,Devise,我已为我的Desive用户添加了新字段,但现在,我无法更新学生记录,尽管我收到以下消息: 您已成功更新您的帐户 但是,数据库永远不会更新 新字段有attr\u accessible和attr\u accessitor 是因为新字段中存在外键吗?我添加了国家id以将用户与其国家关联,这是不更新的原因吗 如何调试发生的DB错误?我尝试使用更新属性在设计功能中:使用密码更新,但是,没有运气,没有错误,只是:您成功地更新了您的帐户。 我注意到服务器开发日志中没有发出SQLite更新命令,为什么 请提供帮

我已为我的Desive用户添加了新字段,但现在,我无法更新学生记录,尽管我收到以下消息:

您已成功更新您的帐户

但是,数据库永远不会更新

新字段有
attr\u accessible
attr\u accessitor

是因为新字段中存在外键吗?我添加了国家id以将用户与其国家关联,这是不更新的原因吗

如何调试发生的DB错误?我尝试使用
更新属性在设计功能中:
使用密码更新,但是,没有运气,没有错误,只是:
您成功地更新了您的帐户。

我注意到服务器开发日志中没有发出SQLite更新命令,为什么


请提供帮助?

尝试通过在UserController上的更新操作中添加after_筛选器来引发异常或记录。如果没有该代码的钩子,请尝试重写控制器操作(并调用super)。

我找到了解决方案,我不应该使用
attr\u访问器作为未直接存储到DB中的属性的访问器


我希望这会对某些人有所帮助。

检查数据库中是否有新字段?rails控制台是否可以访问这些字段?这些字段存在于我的数据库中,只要有问题,我如何调试它?为什么没有显示错误?另外,如何检查它们是否可以从rails控制台访问?请尝试运行相同的更新ie
User.first.update\u属性!(:some_attribute=>“some value”)
通过脚本/控制台。观察输出和SQL更新(如果有)。还可以尝试通过直接分配值并调用save来更新用户对象!