Ruby on rails 如何将RubyonRails模型转换为.json文件?

Ruby on rails 如何将RubyonRails模型转换为.json文件?,ruby-on-rails,json,ruby-on-rails-4,models,learn-ruby-on-rails,Ruby On Rails,Json,Ruby On Rails 4,Models,Learn Ruby On Rails,如果我有一个基本的RubyonRails模型(比如典型的blogpost应用程序),它有一个索引操作,比如: def index @blogs=Blog.all end 如何将所有博客转换为.json文件? 我知道如果我这样做: def index @blogs=Blog.all respond_to do |format| format.html{} format.json{render json: @blogs.to_json} end 这将提供一个json输出(我

如果我有一个基本的RubyonRails模型(比如典型的blogpost应用程序),它有一个
索引
操作,比如:

def index
  @blogs=Blog.all
end
如何将所有博客转换为
.json
文件? 我知道如果我这样做:

def index
  @blogs=Blog.all
  respond_to do |format| 
  format.html{}
  format.json{render json: @blogs.to_json}
end
这将提供一个json输出(我想要的),但路径如下:/blogs.json在我的浏览器中,但我想要一个实际的.json文件(不仅仅是一个在浏览器中的路径可见的文件)

我该怎么做呢?

只要更换

 format.json{render json: @blogs.to_json}


你的意思是要下载一个json文件吗?如果是这样的话,那么是的。不清楚你在问什么。是否希望浏览器提示用户下载
.json
文件而不是显示该文件?还是要将数据写入运行服务器的计算机上的
.json
文件?如果是后者,您是只想做一次,还是有一个可以经常使用的命令?ActiveRecord似乎有一个to_json方法,可以将模型序列化为json文件,但它已被弃用。您可能希望了解,默认情况下,您是否只想从该url返回json响应(而不是html),然后删除
format.html{}
行,或者如果您仍想获得html版本(at.html),请在路由文件ala
resources:blogs,:defaults=>{:format=>:json}
format.json{send_data @blogs.to_json}