【问题标题】:Globalize2 Get only translated attributes from modelGlobalize2 仅从模型中获取已翻译的属性
【发布时间】:2010-12-20 14:31:20
【问题描述】:
class Site < ActiveRecord::Base
translates :title, :content
attr_accessor :rank
end
如何仅列出与 translates 方法一起使用的 Site 模型的属性? (在这种情况下,我应该得到一个带有 ['title', 'content'] 的数组,没有 rank 属性,因为它没有被翻译。
【问题讨论】:
标签:
ruby-on-rails
globalize2
【解决方案1】:
翻译存储在单独的表中,可通过关联 globalize_translations 访问
所以,要获得这些,只需做一个
Site.first.globalize_translations
然后你必须过滤掉像id, site_id, locale, created_at, updated_at这样的未翻译的列,剩下的应该是你已经翻译的。
如果您想要获取正在翻译的属性而不是其内容,那么您可以在 globalize_options 中找到它们:Site.globalize_options[:translated_attributes]