ruby-on-rails – 在json响应中转换两个模型属性

ruby-on-rails – 在json响应中转换两个模型属性,第1张

概述我在轨道上的ruby,我有两个模型,目标是在两个模型上搜索网站,我使用twitter typeahead,但我有的问题是json必须是一个对象. 我不确定将两个对象转换为一个的最佳方法是什么.这里的代码 @users= Search.user(params[:query])@articles= Search.article(params[:query])respond_to do |forma 我在轨道上的ruby,我有两个模型,目标是在两个模型上搜索网站,我使用twitter typeahead,但我有的问题是Json必须是一个对象.

我不确定将两个对象转换为一个的最佳方法是什么.这里的代码

@users= Search.user(params[:query])@articles= Search.article(params[:query])respond_to do |format|  format.HTML # index.HTML.erb  format.Json {    render :Json => {     :art=> @articles.map(&:Title),:user=> @users.map(&:first_name)  }}  endend

我不知道最好的方法是什么,或者我似乎无法找到将这两个模型合并为一个的最佳文档.我不知道to_Json,as_Json或concat是否是最好的.

这个想法是得到以下Json的结果

{"art":["John","Serge","Dean","feng","Heather"],"user":["Ontario high school teachers drop next week's walkout plan","Air Canada to appeal Quebec court ruling on Aveos"]}

以下

{"result":["John","Heather","Ontario high school teachers drop next week's walkout plan","Air Canada to appeal Quebec court ruling on Aveos"]}
解决方法 因此,如果您想获得用户和文章的数组:

respond_to do |format|  format.Json  { render :Json => {:art => @articles,:user => @users }}  endend

根据您的编辑:

format.Json {  render :Json => {    result => @articles.map(&:Title) | @users.map(&:first_name)}}

根据最后的评论,只是陷入零问题:

format.Json {  render :Json => {    result => (@articles.map(&:Title) || []) | (@users.map(&:first_name) || [])}}
总结

以上是内存溢出为你收集整理的ruby-on-rails – 在json响应中转换两个模型属性全部内容,希望文章能够帮你解决ruby-on-rails – 在json响应中转换两个模型属性所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1279981.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存