Ruby on rails 如何获取模型的本地化属性标签?
假设我有一个典型的“用户”模型,带有“名字”字段。我这样设置本地化以处理人类可读的标签:Ruby on rails 如何获取模型的本地化属性标签?,ruby-on-rails,localization,Ruby On Rails,Localization,假设我有一个典型的“用户”模型,带有“名字”字段。我这样设置本地化以处理人类可读的标签: en: activerecord: attributes: user: first_name: "First Name" 对于给定的@user对象,我可以访问“First Name”标签以便在视图中使用吗 我相信这是可能的-我似乎不容易在任何地方找到它。模型属性与模型,而非实例 对于用户模型,您可以编写 User.human\u属性名称(:first\u name)
en:
activerecord:
attributes:
user:
first_name: "First Name"
对于给定的@user对象,我可以访问“First Name”标签以便在视图中使用吗
我相信这是可能的-我似乎不容易在任何地方找到它。模型属性与模型,而非实例 对于
用户
模型,您可以编写
User.human\u属性名称(:first\u name)
如果您真的想从用户实例中获取值,那么
@user.class.human\u属性\u名称(:first\u name)
这里记录了您几乎完全相同的示例
模型属性与模型,而非实例 对于
用户
模型,您可以编写
User.human\u属性名称(:first\u name)
如果您真的想从用户实例中获取值,那么
@user.class.human\u属性\u名称(:first\u name)
这里记录了您几乎完全相同的示例
不确定为什么需要该
@user
对象,因为对于所有的用户对象,名字标签都是相同的
试试看:
I18n.t "activerecord.attributes.user.first_name"
更多的死亡
更新
由@colinux
给出的答案是最优雅的<代码>用户。人类属性\u名称(:first\u name)
使用该名称。不确定为什么需要该@User
对象,因为对于所有用户对象,first\u name
标签是相同的
试试看:
I18n.t "activerecord.attributes.user.first_name"
更多的死亡
更新
由
@colinux
给出的答案是最优雅的User.human\u attribute\u name(:first\u name)
使用该名称。是的-您的第一个示例正是我想要的。我知道我100%地读了那一页,完全没有读到“Model.human_attribute_name(attribute)”。第二部分也可以,但当我写这篇文章时,我没有直接考虑模型与实例。是的,你的第一个例子正是我想要的。我知道我100%地读了那一页,完全没有读到“Model.human_attribute_name(attribute)”。第二部分也可以,但当我写这篇文章时,我没有直接考虑模型与实例。