我有8个 Controller 将使用will_paginate对它们的索引页进行分页。我想覆盖每个默认值的“上一个”和“下一个”,而不必指定相同的选项8次。有没有一种方法可以只覆盖默认值一次(也许通过将will_paginate子类化)。
最佳答案
will_paginate uses I18n,所以您可以使用它。
鉴于您使用英语作为默认语言环境,因此application.rb
中应包含以下行:
config.i18n.default_locale = :en
然后,您可以通过将以下内容添加到
config/locales/will_paginate.en.yml
来更改分页链接的文本:en:
will_paginate:
previous_label: "← go back"
next_label: "go forward →"
或者,您可以将它们添加到默认翻译文件中:
config/locales/en.yml
但是我发现它很快变得难以处理。注意:如果您使用其他区域设置(例如
es
),则至少需要将YAML文件中的en:
key 替换为es:
,并且要简洁地命名文件,使用
config/locales/will_paginate.es.yml
或config/locales/es.yml
。关于ruby-on-rails - 如何最好地干燥will_paginate选项,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7073789/