【问题标题】:How to remove Field Names in validates_presence_of on rails Model如何在rails模型上的validates_presence_of中删除字段名称
【发布时间】:2009-08-24 10:39:54
【问题描述】:

如何在 validates_presence_of on rails 模型中删除字段名称以进行以下编码

validates_presence_of :address, :attributes => true, :discard_if => :invalid?, :on => :save, :message=> "Invalid Address"

输出是

Address Invalid address  

我不希望在此验证中使用地址字段

请帮我解决这个问题

【问题讨论】:

    标签: ruby-on-rails validation model


    【解决方案1】:

    我相信这就是您正在寻找的答案:

    Fully custom validation error message with Rails

    【讨论】:

      【解决方案2】:

      标准错误格式为"%{attribute} %{message}"。如果您不希望消息中包含属性名称,可以在您的语言环境中更改 errors.format

      # config/locales/en.yml
      en:
        errors:
          format: '%{message}'
      

      AFAIK,您不能对单个属性执行此操作。

      【讨论】:

        【解决方案3】:

        我正在寻找同样的问题并停在:

        *instance.errors.add*
        

        例如,

        question.errors.add("Answer","can't be blank") if self.body.blank?
        

        有 *errors.add_to_base*,但在我看来,只有 add 工作得更舒服。

        【讨论】:

        • 然后你可以做这样的事情:
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-11-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多