Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails RubyonRails4和简单表单中“helpers”可用的i18n翻译列表?_Ruby On Rails_Ruby On Rails 4_Rails I18n - Fatal编程技术网

Ruby on rails RubyonRails4和简单表单中“helpers”可用的i18n翻译列表?

Ruby on rails RubyonRails4和简单表单中“helpers”可用的i18n翻译列表?,ruby-on-rails,ruby-on-rails-4,rails-i18n,Ruby On Rails,Ruby On Rails 4,Rails I18n,我似乎找不到文档来列出Rails的i18n可以使用哪些帮助程序 我第一次看到它是以简单的形式出现的 我找到的最接近的是 然而,我也知道标签和其他东西也适用于本节 可用助手条目的完整列表是什么?Simple form i18n 你的问题有一个简短的答案和一个冗长的答案。这是简短的版本。如果你想要长的,请告诉我 使用i18n需要实践,并且非常关注运行时上下文。但是可以只设置简单的表单i18n,而不涉及整个i18n体系结构 您列出的帮助程序不是简单表单的一部分,它们是标准应用程序yaml的一部分。除了

我似乎找不到文档来列出Rails的i18n可以使用哪些帮助程序

我第一次看到它是以简单的形式出现的

我找到的最接近的是

然而,我也知道标签和其他东西也适用于本节

可用助手条目的完整列表是什么?

Simple form i18n 你的问题有一个简短的答案和一个冗长的答案。这是简短的版本。如果你想要长的,请告诉我

使用i18n需要实践,并且非常关注运行时上下文。但是可以只设置简单的表单i18n,而不涉及整个i18n体系结构

您列出的帮助程序不是简单表单的一部分,它们是标准应用程序yaml的一部分。除了select:之外,它是简单表单的一部分,但使用标签提示定义:

简单形式

简单表单有自己的yaml部分,它位于应用程序yaml中,但不在helpers中:它在yaml结构中的优先级与helpers相同:如果有帮助的话

在yaml中,标题标签是简单的形式:此文件中使用的结构和标签非常重要

...
  simple_form:
    error_notification:
      default_message: "Please review the problems below:"
    hints:
      your_model:
        column_1_name: Your hint sentence.
        column_whatever_name: Please enter the ...
      another_model:
        column_in_this_model: Valid range is from 1 to 5 ....
    labels:
      your_model:
        column_1_name: Email
        column_2_name: Password
    priority:
      model:
        column: Text
    prompts:
      model:
        column: Text
    required:
      text: 'required'
      mark: '*'
    prompts:
      your_model:
        column_name: Select the type of..
      another_model:
       column_name: Select the state...
这是一个简短的答案。如果你需要任何跟进,请告诉我

附录:为任何情况找到正确的上下文标签 用i18n填充孔

安装-这是一个命令行工具,有助于理解YAML中应用程序本地化字符串的必要结构。它揭示了令人难以置信的不透明背后的结构

$i18n-tasks health
它会吐出这样的东西:

|   en   | simple_form.error_notification.default_message                                         | Please review the problems below:                                                                                      |
|   en   | simple_form.hints.location.short_desc                                                  | General information, not a review.                                                                                     |
|   en   | simple_form.hints.location.website                                                     | Please enter the leading http:// or https://                                                                           |
|   en   | simple_form.hints.review.rating                                                        | Range is from 1 = Meh to 5 = Super yum                                                                                 |
|   en   | simple_form.labels.session.email                                                       | Email                                                                                                                  |
|   en   | simple_form.labels.session.password                                                    | Password                                                                                                               |
|   en   | simple_form.no                                                                         | No                                                                                                                     |
|   en   | simple_form.priority.article.category                                                  | Article                                                                                                                |
|   en   | simple_form.priority.location.country                                                  | United States of America                                                                                               |
|   en   | simple_form.prompts.article.category                                                   | Select the type of article                                                                                             |
|   en   | simple_form.prompts.location.state                                                     | Select the state                                                                                                       |
|   en   | simple_form.required.mark                                                              | *                                                                                                                      |
|   en   | simple_form.required.text                                                              | required                                                                                                               |
|   en   | simple_form.yes  
每一个标签。级别直接引用您的翻译yaml

有许多推荐行选项。一个有用的方法是

$i18-tasks missing  
这里有一个转折点——在您的代码中,如果您希望存储翻译,请将您的翻译助手与假字符串t'bogus'一起使用

i18任务将把它标记为丢失的翻译字符串,并在这个过程中告诉您该字符串在这个上下文中的yaml结构,以便Rails i18n找到它

是的,这是疯狂的倒退,但您只需要这样做,直到您了解i18n的结构。根据经验,您将更好地了解在本地化yaml中放置字符串的位置

锤击法 为了完整起见,我还将提到可以对每个翻译路径进行硬编码,例如

t('defaults.labels.read_more_link_label')
查找:

your_app_name:
  application:
    defaults:
     labels:
        read_more_link_label: "Read more..."

i18任务gem中有很多特性。非常有用。

哇,这太棒了,谢谢!但我想我的问题是:你怎么知道这些?你是从文件页上读的吗?我是否必须通过实践来了解i18n可以使用哪种元素,并不断地寻找每种元素?这将是一个很长的答案。没有明确的文档,但确实有办法。我可以帮上忙,但得晚一点。你会接受这个答案吗?请你写一个长的答案好吗?对不起,我不能再给你加分了。但是如果你写下来,它将是非常有价值的。谢谢别担心。非常感谢。我很乐意帮忙。现在补充答案。
t('defaults.labels.read_more_link_label')
your_app_name:
  application:
    defaults:
     labels:
        read_more_link_label: "Read more..."