从DB(rails)中的数组中提取数据

时间:2011-01-21 08:27:14

标签: mysql ruby-on-rails arrays

我试图使用以下语法从数组中提取一些数据:

@entries_from_db = XrEntry.find(:all, :conditions => [:FeedURI => uri ], :select => 'json')

:FeedURI是包含uri的数组的记录[“123456”,“23345”,“4453”] uri是包含当前uri的变量。

我想说的是'从XrEntry中选择JSON,其中FeedURI包含uri' 当我尝试使用不同的代码时,我卡在要访问数组的部分上并总是得到几个错误信息。

有没有人有想法? 谢谢!

2 个答案:

答案 0 :(得分:1)

我用这个语法解决了它

@entries_from_db = XrEntry.find(:all, :conditions => ["FeedURI like ?", "%#{uri}%"] , :select => 'json')

读取数组

需要“%#{your_rails_variable}%”

答案 1 :(得分:0)

您好像已经切换了条件语法。你可以从db属性开始,然后是变量。

@entries_from_db = XrEntry.find(:all, 
                                :conditions => { :uri => FeedURI }, 
                                :select => 'json')

这将返回仅存在json属性的XrEntry对象数组。要获取只有json数据的数组,您可以像这样映射它:

@json_array = @entries_from_db.map(&:json)