【问题标题】:Is it possible to do validations in Rails depending on the current locale是否可以根据当前语言环境在 Rails 中进行验证
【发布时间】:2012-07-17 21:26:56
【问题描述】:

我正在开发一个双语 Rails 应用程序。我有一个模型Application,代表某个课程的申请人(如果有人想参加,他/她填写申请表,并保存到数据库中)。问题是,表格在英语和克罗地亚语中看起来应该有点不同(这是两种语言)。为此,我通常必须使用表格,但差异非常小,所以我不想这样做。

因此,这意味着我必须根据申请人是提交克罗地亚语表格还是英文表格进行不同的验证。有什么办法可以做到吗?

【问题讨论】:

    标签: ruby-on-rails ruby validation internationalization


    【解决方案1】:

    您可以使用ifunless 选项进行验证

    validates :something, presence: true, if: ->(){ language == "en" }
    

    language 可以是模型中定义的虚拟属性,您可以在表单参数中传递它

    【讨论】:

    • 哇,我不敢相信我没有想到这一点。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多