Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 从一个DB列呈现字符串的JSON数组_Ruby On Rails_Json_Controller_Rendering - Fatal编程技术网

Ruby on rails 从一个DB列呈现字符串的JSON数组

Ruby on rails 从一个DB列呈现字符串的JSON数组,ruby-on-rails,json,controller,rendering,Ruby On Rails,Json,Controller,Rendering,我在这里研究了其他JSON呈现问题,但我没有发现任何希望以数组结束的问题。我发现了很多关于以散列形式呈现的帖子,但都没有什么帮助 最近的尝试包括: def create params[:_json].each do |ip| IpAddress.create(ip: ip) end ips = IpAddress.pluck(:ip) ips.each do |ips| ips.to_s end render json: ips end 以及 de

我在这里研究了其他JSON呈现问题,但我没有发现任何希望以数组结束的问题。我发现了很多关于以散列形式呈现的帖子,但都没有什么帮助

最近的尝试包括:

def create
  params[:_json].each do |ip|
    IpAddress.create(ip: ip)
  end

  ips = IpAddress.pluck(:ip)

  ips.each do |ips|
    ips.to_s
  end

  render json: ips
end
以及

def create
  params[:_json].each do |ip|
    IpAddress.create(ip: ip)
  end
  render json: IpAddress.all, methods: [:ip]     
end
这两次尝试都返回整个数据库行数组


感谢您的帮助。谢谢

这在一般情况下应该有效。 只是在创建数据库条目时构建数组,然后返回它

def create
  ips = params[:_json].inject([]) do |a, ip|
    a << IpAddress.create!(ip: ip).ip
    a
  end
  render json: {ips: ips}
end
def创建
ips=params[:_json]。注入([])do | a,ip|

a对不起,我的def创建操作不是问题。它正确地呈现了,但问题是我的测试失败了,因为在创建之后,它正在执行索引操作,以查看数组是否正确保存。所以,我补充道

  def index
    render json: IpAddress.pluck(:ip)
  end
我的考试通过了


谢谢你的帮助。

ips=IpAddress.pull(:ip)
然后
呈现json:{ips:ips}
?至少问这个问题有助于解决你的问题。就是这样!我花了几个小时在这上面,在添加我的问题10分钟后,我明白了。所以礼仪:我应该接受我自己的答案并保留它(这样可能对其他人有帮助)还是删除整个问题?对不起,没关系。根据Meta,一旦提供了其他答案,您就不能删除。无论哪种方式,您都不会对自己的答案感到不满。就放在这儿吧。