将列添加到表Rails 3.1后无法更新旧条目

时间:2011-12-13 14:02:40

标签: ruby-on-rails ruby-on-rails-3.1 rails-migrations

我有一个已经与某些用户一起运行的rails应用程序,我无法删除的用户。

现在我在用户表中添加了几列(如姓氏,昵称)。

问题在于,虽然新的注册可以改变配置文件信息,但现有的信息不能改变它们。

任何帮助?

2 个答案:

答案 0 :(得分:0)

那么,用户无法更新他们的任何信息?或者字段没有出现?

如果字段未显示,请转到:

app/views/users/edit.html.erb

查看表单的来源,您很可能需要在那里或

中添加字段
app/views/users/_form.html.erb

现在,如果用户无法编辑信息,您需要创建机制(用户编辑和用户#update)或在迁移中自行更新记录。如果你不能做其中任何一件事,那就是设计上的缺陷:)

答案 1 :(得分:0)

我犯了一个愚蠢的错误,因为它没有更新配置文件中的条目。

我添加了新列,其中很少一些在注册时是强制性的,但在更新个人资料时并非强制性(例如: - 出生日期),因为我们认为没有人愿意更改他们的出生日期:)

因此,当现有用户尝试更新其个人资料时,由于我们已应用的验证,出生日期字段在后端失败。

通过检查控制台来计算出来。