如何将 Koala 搜索结果保存到 Rails 数据库

How to save Koala search results to Rails database

我已经看到几个关于如何使用 koala 初始化与 Facebook 的连接然后使用 @graph.graph_call 类型方法调用进行搜索的简短回答,但我还没有看到任何人解释如何获得该搜索的结果并将它们保存到 Rails 数据库中。我是否必须创建自己的资源来匹配来自 Facebook 的 koala returns 的 json 格式,然后将这些类型的对象保存到 rails 数据库中?或者,考拉有办法帮我处理吗?谢谢

您需要自行持久化获取的数据。您可能需要创建自己的资源或向现有 table 添加列。这取决于你想做什么。

例如,通过 Facebook 用户 ID 查找或创建用户的代码如下所示:

graph = Koala::Facebook::API.new(user_fb_access_token)
user_info = graph.get_object(:me, fields: %w(email))

user = User.find_or_create_by(fb_user_id: fb_user_id) do |new_user|
  new_user.email = user_info['email']
  new_user.password = SecureRandom.hex
end

在这种情况下,您需要将 fb_user_id 列添加到用户 table。