gpt4 book ai didi

ruby-on-rails - Authlogic_OAuth 在 Rails 3 中失败,错误为 "uninitialized constant UserSession::OAuth"

转载 作者:行者123 更新时间:2023-12-04 16:59:32 26 4
gpt4 key购买 nike

我已经让我的应用程序与 Authlogic 一起工作(即 sign_in 和 sign_up),我现在正在尝试通过 Authlogic_OAuth gem 添加对 OAuth 的支持。我已经设置了所有基础知识(我认为),并且在我的登录页面上添加了一个“使用 Twitter 登录”按钮。问题是当我单击按钮时出现此错误:

 uninitialized constant UserSession::OAuth

使用应用程序跟踪:
app/models/user_session.rb:17:in `oauth_consumer'
app/controllers/user_sessions_controller.rb:23:in `create'

失败的函数在我的 user_session 模型中:
# authlogic_oauth hacks                                                       
# Twitter example
def self.oauth_consumer
OAuth::Consumer.new("TOKEN", "SECRET",
{ :site => "http://twitter.com",
:authorize_url => "http://twitter.com/oauth/authenticate"})
end

我对 rails 和 ruby​​ 还很陌生,所以我不太明白这个命名空间冲突的来源或如何解决它。任何帮助将不胜感激。

最佳答案

好的,我想通了。问题是 OAuth::Consumer 没有用 authlogic_oauth 定义。它实际上是在 oauth gem 中定义的。所以我将我的 Gemfile 更新为:

gem 'authlogic', '2.1.6'
# set up oauth capabilities. Note: :lib is replaced with :require in rails 3
gem 'authlogic-oauth', '1.0.8', :require => 'authlogic_oauth'
gem 'oauth', '0.4.4'

然后运行:
bundle install

并且,不要忘记重新启动 rails 服务器,以便它从 Gemfile 重新加载 gem。

关于ruby-on-rails - Authlogic_OAuth 在 Rails 3 中失败,错误为 "uninitialized constant UserSession::OAuth",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5332736/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com