考拉喜欢发帖

时间:2014-06-22 14:19:02

标签: ruby-on-rails facebook-graph-api haml koala

我目前正在使用考拉,所有似乎都在工作,但是当试图使用以下内容获得某些帖子上的喜欢时,我似乎得到的是项目数组

应用程序助手中的代码

    def facebook
    @facebook ||= Koala::Facebook::API.new(current_user.oauth_token)
    block_given? ? yield(@facebook) : @facebook
  rescue Koala::Facebook::APIError
    logger.info e.to_s
    nil
  end

def likes_count obj
    facebook.get_object(obj, :fields => "likes.summary(true)")
  end
视图中的

代码

=likes_count(feed['id'])

结果返回

{"id"=>"846011512095715", "updated_time"=>"2014-06-22T11:11:45+0000", "likes"=>{"data"=>[{"id"=>"10152444475716893", "name"=>"Tahlia Fulton"}, {"id"=>"10152240895519022", "name"=>"Tim Raftery"}, {"id"=>"481256765338477", "name"=>"Gabby Taylor"}, {"id"=>"664803753573900", "name"=>"Harriet Ochsenbein"}, {"id"=>"10152453604228810", "name"=>"Kelly Jenkinson"}, {"id"=>"10152145864189249", "name"=>"David Glazzard"}, {"id"=>"10203193488711772", "name"=>"Bianca Love"}, {"id"=>"10152567265688833", "name"=>"Clare Duncan"}, {"id"=>"105513176145556", "name"=>"Frankston Hockey Club"}], "paging"=>{"cursors"=>{"after"=>"MTA1NTEzMTc2MTQ1NTU2", "before"=>"MTAxNTI0NDQ0NzU3MTY4OTM="}}, "summary"=>{"total_count"=>9}}}

2 个答案:

答案 0 :(得分:9)

喜欢帖子:

likes = @graph.get_object('post_id', :fields => "likes.summary(true)")["likes"]["summary"]["total_count"]

如果有人碰到这个并且恰好正在寻找股票和评论数:

在帖子上分享:

shares = @graph.get_object('post_id', :fields => "shares")["shares"]["count"]

对帖子的评论:

comments = @graph.get_object('post_id', :fields => "comments.summary(true)")["comments"]["summary"]["total_count"]

或者如果您更喜欢这三种哈希:

post_kpis = @graph.get_connections(@post, 'insights', metric: 'post_storytellers_by_action_type').first["values"].first["value"]

获取有关您帖子的所有见解:

post_insights = @graph.get_connections(@post, 'insights')

答案 1 :(得分:0)

尝试@graph.get_connections(post_id, "likes")公开Koala::Facebook::API::GraphCollection对象,您可以在该对象上调用.next_page来遍历整个喜欢的列表。

相关问题