Ruby 按列格式返回json
如何以列格式返回json 假设User表有3列Ruby 按列格式返回json,ruby,ruby-on-rails-3,ruby-on-rails-4,Ruby,Ruby On Rails 3,Ruby On Rails 4,如何以列格式返回json 假设User表有3列(姓名、年龄、位置) 用户表 预期的JSON响应格式(按列) 如何在Rails上完成它?您可以执行以下操作: data = { name: User.pluck(:name), age: User.pluck(:age), location: User.pluck(:location) } render json: data data = { name: [], age: [], location: [] } User.
(姓名、年龄、位置)
用户表
预期的JSON响应格式(按列)
如何在Rails上完成它?您可以执行以下操作:
data = {
name: User.pluck(:name),
age: User.pluck(:age),
location: User.pluck(:location)
}
render json: data
data = {
name: [],
age: [],
location: []
}
User.pluck(:name, :age, :location).each do |u|
data[:name] << u[0]
data[:age] << u[1]
data[:location] << u[2]
end
render json: data
但请注意,这将查询数据库3次
编辑:如果要在一个查询中完成所有操作,请执行以下操作:
data = {
name: User.pluck(:name),
age: User.pluck(:age),
location: User.pluck(:location)
}
render json: data
data = {
name: [],
age: [],
location: []
}
User.pluck(:name, :age, :location).each do |u|
data[:name] << u[0]
data[:age] << u[1]
data[:location] << u[2]
end
render json: data
数据={
姓名:[],
年龄:[],
地点:[]
}
User.pull(:name,:age,:location)|
数据[:名称]