簡體   English   中英

Ruby on Rails中't()'標記的含義是什么?

[英]What does the 't()' tag mean in Ruby on Rails?

我在視圖中遇到了一些開源代碼,其中t()標記類似於HTML轉義序列h()

<%= f.label :password, t(:password, :scope => "activerecord.attributes.user") -%>

t()是什么意思?

t(keys,options = {})

翻譯的別名

translate(keys,options = {})

代表參加I18n#translate但還執行了兩項附加功能。 首先,它會捕獲MissingTranslationData異常並將它們轉換為包含缺失鍵的內聯跨度,這樣您就可以在視圖中看到缺少的內容。

其次,如果密鑰以句點開始,它將按當前部分對密鑰進行范圍調整。 因此,如果您從people / index.html.erb模板調用translate(".foo") ,您實際上將調用I18n.translate("people.index.foo") 這使得在同一部分內翻譯多個鍵的重復性降低,並為您提供了一個簡單的框架,可以一致地確定它們的范圍。 如果您沒有為句點添加前綴,則不會轉換任何內容。 此方法也別名為t

config/locales翻譯.yml文件中的密鑰

t(:password)

關鍵是“密碼”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM