Ruby on Rails - respond_to :JSON + respond_with + except (适用



AlbumsController:

respond_to :json
def index
  respond_with albums.ordered
end

现在,我该如何使基础调用始终to_json使用以下选项执行:except => [:created_at, :updated_at]?我的意思不仅仅是这个动作,而是这个控制器中定义的所有其他动作。

as_json 方法是用于序列化为 json 的方法

class Album
  def as_json(params={})
    params.merge! {:except=>[:created_at, :updated_at]}
    super(params)
  end
end

您可以在模型上定义serializable_hash,以定义要返回的键和值。然后,Rails 将根据此哈希返回 JSON/XML:

def serializable_hash
  { :name => "Stack Overflow",
    :created_at => created_at",
    :posts_count => posts.count
  }
end

相关内容

  • 没有找到相关文章