如何解决如何在正在清理的YML文件中使用link_to帮助程序?
我的locales.yml
文件中有使用link_to
助手的密钥。
payment_types:
credit_card: "Requires bank authorization. <%= link_to 'Tutorial','www.linktotutorial.com',target: '_blank' %>"
以前,我们使用的标签中带有href以及sanitize,如下所示:
sanitize(t("payment_types.#{payment_type}"),tags: %w(a),attributes: %w(target href)),payment_type
但是我必须重构它才能使用link_to
帮助器。
问题在于,消毒已一起过滤erb
标签(“需要银行授权”之后什么也没有出现),我找不到允许erb
标签并呈现{ {1}}正确。
另一方面,要消除卫生,则将包含link_to
标签的字符串呈现出来。
解决方法
要解析该ERB标签,您可以创建诸如locales.yml.erb之类的内容
但是再次要检查Rails是否在内部解析ERB yml会很麻烦。
即使正在解析,link_to helper还是可用。
相反,我建议一种简单的方法:
# locales.yml
payment_types:
credit_card_html: "Requires bank authorization. %{titorial_link}"
# Usage in views
= t("payment_types.#{payment_type}_html",tutorial_link: link_to('Tutorial','www.linktotutorial.com',target: '_blank'))
请注意后缀_html
。用于HTML安全翻译。
详细了解HTML安全翻译here
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。