【问题标题】:Use validations for form feedback对表单反馈使用验证
【发布时间】:2011-02-10 18:31:04
【问题描述】:

我想为我的用户填写表单提供一些帮助。所以让我们假设我有一个模型customer

validates_presence_of :email
validates_format_of :email, :with => /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i, :message => 'must be a valid email address'

现在我想在不实际调用它们的情况下获取属于 :email 的错误消息。所以我需要字符串“(email) 不能为空”和“(email) 必须是有效的电子邮件地址”才能将它们作为工具提示打印在我的注册表单上。

那么有什么方法可以获取呢?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3


    【解决方案1】:

    Customer.validators 将为您提供一组验证器,然后您可以迭代它们并获取,例如:Customer.validators[0].options[:message]。

    【讨论】:

    • 好的,我得到了一个验证器列表。但我只能获取错误消息,如果它是自定义消息。消息是PresenceValidator 不在所述数组中。
    • 嗯,不容易得到。您可以使用自定义错误消息(这就是我所做的)或以某种方式提取默认错误 - 它们在 YAML 文件中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-23
    • 2019-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多