长生不老药| gettext不会翻译某些字符串

时间:2019-04-13 19:31:46

标签: elixir phoenix-framework 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

按预期方式本地化的模板文件中的字符串。

1 个答案:

答案 0 :(得分:1)

使用@语法,我们定义了模块属性。 这些是在编译时设置的。这意味着在编译代码时,gettext函数仅被评估一次。

所以我将@specialists_search_definition更改为

def specialists_search_definition, do:

一切正常。