Activerecord Rails将DB列名添加到错误消息中

Activerecord Rails将DB列名添加到错误消息中,activerecord,ruby-on-rails-5,Activerecord,Ruby On Rails 5,我试图显示不同于预定义的消息。在我的模型文件中,我添加了这一行来检查db中是否存在该公司。 我使用的是Rails 5.2.2 class Company < ApplicationRecord validates :tax_no, :uniqueness => {message: "This tax number has already been used"} end 我得到的结果是: 公司税号此税号已被使用 如何删除该公司税号?这取决于您如何显示错误消息 你会从下面得到正

我试图显示不同于预定义的消息。在我的模型文件中,我添加了这一行来检查db中是否存在该公司。 我使用的是Rails 5.2.2

class Company < ApplicationRecord
    validates :tax_no, :uniqueness => {message: "This tax number has already been used"}
end
我得到的结果是:

公司税号此税号已被使用


如何删除该公司税号?

这取决于您如何显示错误消息

你会从下面得到正确的想法

u = User.new

u.valid?
# => false

u.errors.messages
# {:email=>["This field is required.", "This field is required.", "This field is required."], :password=>["This field is required."]}

u.errors.full_messages
# => ["Email This field is required.", "Password This field is required."]

u.errors.messages[:email]
# => "This field is required."
您必须检查视图部件并使用@company.errors.messages[:tax_no]如果@company.valid?不适用于税号