0

我将插件 :validation_helpers 与 Sequel::Model 一起使用:

class User < Sequel::Model
  plugin :validation_helpers

  def validate
     super
     validates_presence [:name, :mail]
  end
end

当我显示验证错误时,会写入英文消息“不存在”,但我想将消息本地化为其他语言。这可能吗?

4

1 回答 1

1

这是一个 Rails 应用程序吗?如果是,您可以更改 Sequel 插件使用的消息ValidationHelpers。为此,您应该执行以下操作:

给定以下语言环境文件:

en:
  errors:
    exact_length: "is not %{exact} characters"

您可以像这样定义本地化消息:

Sequel::Plugins::ValidationHelpers::DEFAULT_OPTIONS.merge!(
  :exact_length=> {
    :message=> lambda { |exact| I18n.t("errors.exact_length", :exact => exact)}
  }
)

更多信息,您可以访问官方文档:

http://sequel.rubyforge.org/rdoc-plugins/classes/Sequel/Plugins/ValidationHelpers.html

于 2013-02-13T22:11:14.613 回答