加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – I18n.t翻译缺失默认值无

发布时间:2020-12-17 04:02:37 所属栏目:百科 来源:网络整理
导读:所以我知道如果在阅读yaml文件时“翻译缺失:”,如何返回默认值. some = I18n.t("something.something_else",default: "value") 但是,如果我希望默认值为nil,我该如何以Ruby方式执行此操作?我知道我可以正则表达式匹配变量中的“翻译缺失:”,如果匹配,我会
所以我知道如果在阅读yaml文件时“翻译缺失:”,如何返回默认值.

some = I18n.t("something.something_else",default: "value")

但是,如果我希望默认值为nil,我该如何以Ruby方式执行此操作?我知道我可以正则表达式匹配变量中的“翻译缺失:”,如果匹配,我会将它分配给nil.但我想做的就是拥有

some = I18n.t("something.something_else",default: nil)

但它只是让我失去了翻译.有谁知道一个好方法?

解决方法

:默认不能为零.将值设置为nil相当于根本不设置选项.

但是,由于gem似乎是only check whether the key is nil or not,您可以尝试将空字符串作为默认值传递.如果缺少翻译,translate方法可能会返回一个空字符串.

some = I18n.t("something.something_else",default: "")

我相信这是您可以获得的更接近的解决方案,除非您定义内部查找密钥存在的自定义转换方法,如果密钥不存在则返回nil.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读