Globalize2仅从模型中获取已翻译的属性

时间:2009-11-26 07:55:16

标签: ruby-on-rails globalize2

    class Site < ActiveRecord::Base
      translates :title, :content
      attr_accessor :rank
    end 

我如何只列出使用翻译方法的网站模型的属性? (在这种情况下,我应该得到一个带有['title','content']的数组,没有rank属性,因为它没有被翻译。

1 个答案:

答案 0 :(得分:1)

翻译存储在单独的表格中,可通过关联globalize_translations

访问

所以,要获得这些,只需做一个

Site.first.globalize_translations

然后你必须过滤掉id, site_id, locale, created_at, updated_at之类的非翻译栏,剩下的列应该是你翻译过的列。

如果你想要的是获取正在翻译的属性而不是它的内容,那么你可以在globalize_options中找到它们:Site.globalize_options[:translated_attributes]