作为前言,尽管我还是新手,但我已经完成了一些教程(即 Michael Hartl 的)。原谅任何模糊的术语。
我正在尝试在 Rails 4 中构建一个简单的应用程序,它执行以下操作:
用户登录到应用程序(当前使用登录与 Twitter 链接和路由)
get "/auth/:provider/callback" => "sessions#create"
get "/signout" => "sessions#destroy", :as => :signout
一旦<% if current_user %>
是真的,我让视图呈现一个部分,其中将有一个简单按钮列表。当用户单击按钮时,我希望应用程序代表 current_user 发送预设字符串。理想情况下,我会在 ruby/rails 中完成这一切。
这些按钮功能是我挂断电话的地方。我已经阅读了很多文件,但似乎有很多相互矛盾的旧答案。这是我认为最接近的快速列表,尽管没有明确说明从视图中的简单按钮/链接发送推文:
- http://www.sitepoint.com/ruby-social-gems-twitter/
- http://richonrails.com/articles/sending-a-tweet-to-twitter
有些人需要控制器、更健壮的 oauth 设置(我已经捆绑安装并连接到 dev.twitter 应用程序,但除了键之外没有充实),以及其他任何东西。它让我转过身来,我还不够好,无法综合所有信息。任何帮助和指导都会很棒。以下是应用程序中可能有用的其他一些文件。
class SessionsController < ApplicationController
def create
auth = request.env["omniauth.auth"]
user = User.find_by_provider_and_uid(auth["provider"], auth["uid"]) || User.create_with_omniauth(auth)
session[:user_id] = user.id
redirect_to root_url, :notice => "Hi!"
end
def destroy
session[:user_id] = nil
redirect_to root_url, :notice => "Bye!"
end
end
还有omniauth.rb
Rails.application.config.middleware.use OmniAuth::Builder do
provider :twitter, '_priv', '_priv'
end