我一直试图使用"&"使用Ruby中的Twitter API进行intersection方法。我已经尝试了几种不同的方式,它简单地说......"未定义的方法`&'对于Twitter ..."。对于" |"它也是如此。和" - "。我读过的所有文档都说你只需要使用"&"与数组相交并获得具有相同值的值的新数组。我对Ruby很新,我缺少什么?...
@var = @array1 & @array2
我的控制器代码如下:
class UsersController < ActionController::Base
def index
redirect_to :controller => 'users', :action => 'show', :id => params[:id]
end
def show
begin
@users = $client.user_timeline(params[:id])[0..9] #Gets last 10 tweets
@userinfo = $client.user(params[:id])
@friends = $client.friend_ids(@userinfo.id)
rescue Twitter::Error::NotFound
redirect_to :controller => 'users', :action => 'show', :id => '404'
end
end
def compare
@users = $client.user_timeline(params[:id])[0..0] #Limits Timeline request to 1
@users2 = $client.user_timeline(params[:id2])[0..0] #Limits Timeline request to 1
@userinfo = $client.user(params[:id])
@userinfo2 = $client.user(params[:id2])
@friendlists = $client.friend_ids(@userinfo.id) #Variable 1
@friendlists2 = $client.friend_ids(@userinfo2.id) #Variable 2
end
end
我的观看代码是......
<% @friendmerge = @friendlists & @friendlists2 %> #<--This should work right?
<% if !@friendmerge.blank? %>
<pre><%= JSON.pretty_generate(@friendmerge) %></pre>
<% else %>
This didn't work.
<% end %>
我是Ruby的新手,所以请善待。我完全意识到我可能正在努力解决一些核心原则。任何和所有的帮助表示赞赏。
答案 0 :(得分:0)
如果你的对象不支持(数组)交集,他们可能仍然知道如何转换成一个数组。你可以试试
@friendmerge = @friendlists.to_a & @friendlists2.to_a
为了找到答案。