如何从Rails中的Devise用户删除属性?

时间:2014-10-06 20:28:56

标签: ruby-on-rails activerecord devise

我有一个与默认设置不同的设计模型。它有额外的属性。

例如,我的设计用户有一个电子邮件,密码和职业。我想编写一行代码,删除当前登录用户的职业。我喜欢想象它看起来像这样

current_user.career.delete

理想情况下,这将从数据库中清空职业,因此current_user.career将返回nil,直到用户再次更新以添加职业。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

delete方法将id或id数组作为参数,因此您只需使用

即可
current_user.career = nil
current_user.save

或者您可以通过创建迁移将职业设置为零,请参阅此question

change_column :users, :career, :string, :default => nil

请参阅documentation了解详情。