如何在ROR设计中重命名columns encrypted_pa​​ssword?

时间:2018-04-11 13:03:29

标签: ruby-on-rails devise

我想在我的ROR项目中使用设计。我有一个用户表,我可以使用设计。我在users表中有一列password,但设备使用列名encrypted_password来保存加密密码。我尝试将列名从encrypted_password重命名为password但未找到任何内容。

有没有办法在设计模块中更改列名?

2 个答案:

答案 0 :(得分:0)

您可以编写迁移来重命名列。

class RenamePasswordToEncryptedPassword < ActiveRecord::Migration[5.1]
  def change    
    rename_column :users, :password, :encrypted_password 
  end
end

然后运行rake db:migrate

答案 1 :(得分:0)

重命名列似乎不起作用,因为设计本身定义了一个名为password的属性。您应该将现有字段重命名为encrypted_password

如果不破坏核心设计功能,您无法完成的工作。 Devise依赖于此字段,此名称是硬编码的。它不可配置。