Ruby on rails 设计创建重复用户名的错误消息
我将rails 5.2与Desive一起使用。我在数据库中为Desive用户添加了一个唯一的用户名字段。 尝试使用重复用户名注册时,我的数据库出现ActiveRecord::RecordNotUnique错误。我想有一个错误消息,就像Deviate默认的电子邮件一样。谢谢 编辑完整错误消息: PG::UniqueViolation:错误:重复的键值违反唯一性 约束“索引用户”详细信息:键 (用户名)=(超级测试)已存在:插入“用户” (“电子邮件”、“加密密码”、“创建时间”、“更新时间”, “用户名”)值($1、$2、$3、$4、$5)返回“id” 您需要对您的模型进行以下操作:Ruby on rails 设计创建重复用户名的错误消息,ruby-on-rails,devise,Ruby On Rails,Devise,我将rails 5.2与Desive一起使用。我在数据库中为Desive用户添加了一个唯一的用户名字段。 尝试使用重复用户名注册时,我的数据库出现ActiveRecord::RecordNotUnique错误。我想有一个错误消息,就像Deviate默认的电子邮件一样。谢谢 编辑完整错误消息: PG::UniqueViolation:错误:重复的键值违反唯一性 约束“索引用户”详细信息:键 (用户名)=(超级测试)已存在:插入“用户” (“电子邮件”、“加密密码”、“创建时间”、“更新时间”, “
class User < ActiveRecord::Base
devise :database_authenticatable, :registerable,
:confirmable, :recoverable, :validatable # ...
validates_uniqueness_of :username
end
class用户
验证可防止低级别的ActiveRecord::RecordNotUnique
异常,因为如果验证失败,Rails不会尝试写入db。您需要:
class User < ActiveRecord::Base
devise :database_authenticatable, :registerable,
:confirmable, :recoverable, :validatable # ...
validates_uniqueness_of :username
end
class用户
验证可防止低级别的ActiveRecord::RecordNotUnique
异常,因为如果验证失败,Rails不会尝试写入db