[英]Trying to add a 'tier' attribute to users (using devise). Ruby on Rails
我已經使用以下命令生成了遷移:
rails generate migration add_tier_to_user tier:string
為用戶添加等級,例如“管理員”或“學生”。
但是,此后, db:rake
停止工作並返回錯誤。
遷移文件:
class AddTierToUser < ActiveRecord::Migration
def change
add_column :users, :tier, :string
end
end
錯誤:
ActiveRecord::RecordInvalid: Validation failed: Email has already been taken
從您得到的錯誤來看,我認為這是發生的:
email
值的User
記錄。 email
字段添加了唯一性驗證。 如果我是對的,問題不是由遷移本身引起的,而是由以下事實引起的:當您通過rake db:something
加載Rails環境時,會自動創建或更新User
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.