elixir - 灵丹妙药| gettext 不翻译某些字符串
问题描述
我对网站的本地化有疑问。未翻译的模块示例如下所示:
defmodule JpWeb.SpecialistDefinitions do
import JpWeb.Gettext
@specialists_search_definition %{
schema: Jp.Profiles.Specialist,
filters: [
%{
field: :is_verified,
operation: "==",
options: [{"Yes", true}, {"No", false}],
label: gettext("Is verified")
},
%{
field: :photo,
operation: "is_present",
label: gettext("With photo")
},
]
}
end
模板文件中的字符串按预期本地化。
解决方案
使用@ 语法,我们定义了一个模块属性。这些是在编译时设置的。这意味着您的 gettext 函数仅在编译代码时被评估一次。
所以我改变@specialists_search_definition
了
def specialists_search_definition, do:
一切正常。
推荐阅读
- c - 提示可能的变量值/范围的 C 编译器(GCC 或 Clang)
- c# - 如何在每个斜线后获取字符串?
- r - R Shiny中的动作按钮和selectInput:单击动作按钮后将selectInput的输入传递给函数
- flutter - Flutter:如何为 StatefulWidget 创建非最终属性?
- apache-kafka - NiFi写入HDFS错误:java.lang.IllegalArgumentException:无法从空字符串创建路径
- javascript - 本地存储中令牌时的 PrivateRouting [TypeScript]
- python - 无法使用 sklearn 库中的 fit_transform 估算一维数组(拆分测试)
- android - 使用导航组件向后导航
- javascript - 在 vscode 扩展中导入依赖项返回未定义
- python - 在 python 中动态生成“X”个队列