0

我有一个动作:

def get_data
  @people = Person.all

  respond_to do |format|
    format.json do
      render :json => {
        :success => true, 
        :people => @people.as_json({
          :only => [:person_name, :text_description, :text_heading],
          :methods => [:title,:age_group],
        })
      }
    end
  end
end

这里 title 和 age_group 是我在模型 Person 中的方法

def age_group
  self.name
end

现在我想方法看起来像这样

def age_group(age)
  # ...      
end

我如何从控制器传递这个参数作为方法表示作为符号。

4

1 回答 1

1

嗨,根据我的建议,您可以覆盖方法或创建实例方法,具体取决于它将生成哈希或 json 的选项。如果您想使用 as_json,那么您可以挖掘代码这一行有助于挖掘代码https://github.com /rails/rails/blob/2-3-stable/activerecord/lib/active_record/serialization.rb#L33这将为您提供如何传递方法。

于 2012-09-10T10:58:11.630 回答