Ruby on rails 从数据库中删除字段而不重置它

Ruby on rails 从数据库中删除字段而不重置它,ruby-on-rails,mongodb,mongoose,database,Ruby On Rails,Mongodb,Mongoose,Database,我有一个模型播放器: "sport_id" : ObjectId("512db94e6ee1f54932000001"), "team_id" : ObjectId("512dbaf36ee1f5523e00000a"), "twitter" : false, "twitter_account" : "@brianhartline", "updated_at" : ISODate("2013-03-06T10:37:45.943Z"), "version" : 7, 我已经从模型中删除了twi

我有一个模型播放器:

"sport_id" : ObjectId("512db94e6ee1f54932000001"),
"team_id" : ObjectId("512dbaf36ee1f5523e00000a"),
"twitter" : false,
"twitter_account" : "@brianhartline",
"updated_at" : ISODate("2013-03-06T10:37:45.943Z"),
"version" : 7,
我已经从模型中删除了twitter,但数据库中有twitter字段。我不想删除playerDB,但我想删除现有数据库中的twitter字段


我必须做什么?

您可以尝试像这样删除属性

player.attributes.without('twitter')
这应该起作用:

Player.each do |player|
  player.unset(:twitter)
end

要在mongo shell中执行此操作,请执行以下操作:

db.players.update({},{$unset:{twitter:1},{multi:true})

我必须在MongodBdrin上删除它,否则我想在数据库中删除twitter列。如果我使用了你的代码,数据库中的该列将为零。如果你想从数据库中删除twitter,你应该从你的播放器模型中删除字段。是的,我以前做过,但如果激动人心的数据库中有字段twitter,我不想删除playerDB我只想删除激动人心的数据库中的twitter字段。我必须做什么?看这个问题:谢谢,我放弃DB。你给我的链接是ruby,mongo是需要的。