Ruby on rails 在rails应用程序上使用TwitterAPI呈现配置文件图像

Ruby on rails 在rails应用程序上使用TwitterAPI呈现配置文件图像,ruby-on-rails,ruby,ruby-on-rails-3,twitter-bootstrap,twitter,Ruby On Rails,Ruby,Ruby On Rails 3,Twitter Bootstrap,Twitter,当用户使用twitter api登录时,我一直在尝试呈现用户的个人资料图片,但遇到了一些困难。此时没有错误,但图像未渲染 安装了gem“twitter” 这是我的user.rb文件 class User < ActiveRecord::Base # Include default devise modules. Others available are: # :confirmable, :lockable, :timeoutable and :omniauthable devise :da

当用户使用twitter api登录时,我一直在尝试呈现用户的个人资料图片,但遇到了一些困难。此时没有错误,但图像未渲染

安装了gem“twitter”

这是我的user.rb文件

class User < ActiveRecord::Base
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable and :omniauthable
devise :database_authenticatable, :omniauthable, :registerable,
     :recoverable, :rememberable, :trackable, :validatable

has_many :lines

def profile_image_uri(size = :mini)
parse_encoded_uri(insecure_uri(profile_image_uri_https(size))) unless @attrs[:profile_image_url_https].nil?
end

def self.find_for_twitter_oauth(auth, signed_in_resource=nil)


    user = User.where(:provider => auth.provider, :uid => auth.uid).first
    if user
      return user
    else
      registered_user = User.where(:email => auth.uid + "@twitter.com").first
      if registered_user
        return registered_user
      else

        user = User.create(name:auth.extra.raw_info.name,
                            provider:auth.provider, 
                            profile_image_url:auth.uid + "https://pbs.twimg.com/profile_images/2284174872/7df3h38zabcvjylnyfe3_mini.png",
                            uid:auth.uid,
                            email:auth.uid+"@twitter.com",
                            password:Devise.friendly_token[0,20],
                          )
        end

    end
  end
结束


关于我做错了什么,有什么建议吗?

Auth Twitter Profile image url可以通过以下方式提取:

验证[:额外][:原始信息][:配置文件\图像\ url]


我应该把这一行添加到哪个文件?好的,谢谢。这是正确答案的一部分。我将写一个指南,当我完成如何将照片添加到twitter auth时,将其发布在这里。谢谢你的帮助
  <% if user_signed_in? %>
   <li> <a href="#">  <img src="<%= current_user.profile_image_url %>"> <%= current_user.name %>  </a></li><li> 
    <%= link_to "Sign out", destroy_user_session_path,:method => :delete %></li>
    <% else %>
    <li><%= link_to user_omniauth_authorize_path(:twitter) do %>
          <img src="https://g.twimg.com/dev/sites/default/files/images_documentation/sign-in-with-twitter-link.png">
        <% end %>

    </li>
 create_table "users", force: true do |t|
t.string   "email",                  default: "", null: false
t.string   "encrypted_password",     default: "", null: false
t.string   "reset_password_token"
t.datetime "reset_password_sent_at"
t.datetime "remember_created_at"
t.integer  "sign_in_count",          default: 0,  null: false
t.datetime "current_sign_in_at"
t.datetime "last_sign_in_at"
t.string   "current_sign_in_ip"
t.string   "last_sign_in_ip"
t.datetime "created_at"
t.datetime "updated_at"
t.string   "provider"
t.string   "uid"
t.string   "name"
t.string   "profile_image_url"
  user = User.create(name:auth.extra.raw_info.name,
                        provider:auth.provider, 
                        profile_image_url: auth[:extra][:raw_info][:profile_image_url],
                        uid:auth.uid,
                        email:auth.uid+"@twitter.com",
                        password:Devise.friendly_token[0,20],
                      )