当前位置: 首页 > 知识库问答 >
问题:

添加Linkedin身份验证时发生迁移错误

芮承运
2023-03-14

我试图在我的rails应用程序中使用LinkedIn的api进行身份验证。我对rails很陌生,所以我遵循了以下指南http://sourcey.com/rails-4-omniauth-using-devise-with-twitter-facebook-and-linkedin/

耙中止!NameError:main的未定义局部变量或方法config':object/users/AlexanderKehaya/desktop/codea/code_app/config/environment.rb:4:in'/users/AlexanderKehaya/.rvm/gems/ruby-2.1.2/gems/activeSupport-4.1.5/lib/active_support/dependencies.rb:247:inrequire gems/activesupport-4.1.5/lib/active_support/dependencies.rb:232:inload_dependency'/users/alexanderkehaya/.rvm/gems/ruby-2.1.5/lib/active_support/dependencies.rb:247:inrequire_environment!/users/alexanderkehaya/.rvm/gems/ruby-2.1.2/gems/railties-4.1.5/lib/rails/application.rb:379:inblock in run_tasks_blocks'/users/alexanderkehaya/.rvm/gems/ruby-2.1.2/gems/rake-10.3.2/lib/rake/task.rb:240:in调用2.1.2/gems/rake-10.3.2/lib/rake/task.rb:235:在中each'/users/alexanderkehaya/.rvm/gems/ruby-2.1.2/gems/rake-10.3.2/lib/rake/task.rb:235:在中execute'/users/alexanderkehaya/.rvm/gems/ruby-2.1.2/gems/rake/task.rb:179:在中execute:211:inmon_synchronize'/users/AlexanderkeHaya/.rvm/gems/ruby-2.1.2/gems/rake-10.3.2/lib/rake/task.rb:172:ininvoke_with_call_chain'/users/AlexanderkeHaya/.rvm/gems/ruby-2.1.2/gems/rake/task.rb:201:inblock in invoke_premiisites'/userS/AlexanderKehaya/.rvm/gems/ruby-2.1.2/gems/rake-10.3.2/lib/rake/task.rb:199:在中每一个'/users/alexanderkehaya/.rvm/gems/ruby-2.1.2/gems/rake-10.3.2/lib/rake/task.rb:199:在中inea/users/alexanderkehaya/.rvm/gems/ruby-2.1.2/lib/rake/task.rb:199:在中inea/incode>bies/ruby-2.1.2/lib/ruby/2.1.0/monitor.rb:211:inmon_synchronize'/users/alexanderkehaya/.rvm/gems/ruby-2.1.2/gems/ruby-2.1.2/gems/rake-10.3.2/lib/rake/task.rb:172:ininvoke_with_call_chain'/users/alexanderkehaya/.rvm/gems/ruby-2.1.2/gems/rake-10.3.2/lib/rake/task.rb:165:ininvoke_task'/users/AlexanderKeHaya/.rvm/gems/ruby-2.1.2/gems/rake-10.3.2/lib/rake/application.rb:106:inblock(2个级别)in top_level'/users/AlexanderKeHaya/.rvm/gems/ruby-2.1.2/gems/rake-10.3.2/lib/rake/application.rb:106:ineach'/users/alexAnderkeHaya/.rvm/gems/ruby-2.1.2/gems/rake-10.3.2/lib/rake/application.rb:106:inblock in top_level'/users/alexanderkehaya/.rvm/gems/ruby-2.1.2/gems/rake-10.3.2/lib/rake/application.rb:115:inrun_with_threads/users/alexanderkehaya/.rvm/gems/ruby-2.1.2/gems/rake/application.rb:100:in KE-10.3.2/lib/rake/application.rb:78:inblock in run'/users/alexanderkehaya/.rvm/gems/ruby-2.1.2/gems/rake-10.3.2/lib/rake/application.rb:176:instandard_exception_handling'/users/alexanderkehaya/.rvm/gems/ruby-2.1.2/gems/rake-10.3.2/lib/rake/application.rb:75:inrun kehaya/.rvm/gems/ruby-2.1.2/bin/rake:23:in加载'/users/Alexanderkehaya/.rvm/gems/ruby-2.1.2/bin/rake:23:in任务:TOP=>db:migrate=>environment

environemnt.rb文件

require File.expand_path('../application', __FILE__)

config.app_domain = 'somedoamin.com'

config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = true
config.action_mailer.default_url_options = { host: config.app_domain }
config.action_mailer.smtp_settings = {
  address: 'smtp.gmail.com', 
  port: '587',
  enable_starttls_auto: true,
  user_name: 'someuser',
  password: 'somepass',
  authentication: :plain,
  domain: 'somedomain.com'
 }

Rails.application.initialize!

共有1个答案

公冶阳德
2023-03-14

您的environment.rb确实是问题所在。其中的所有配置代码

config.app_domain = 'somedoamin.com'

config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = true
config.action_mailer.default_url_options = { host: config.app_domain }
config.action_mailer.smtp_settings = {
  address: 'smtp.gmail.com', 
  port: '587',
  enable_starttls_auto: true,
  user_name: 'someuser',
  password: 'somepass',
  authentication: :plain,
  domain: 'somedomain.com'
 }

是在错误的地方。它应该在application.rbconfig/environment/development.rb中,如果是特定于开发的。

 类似资料:
  • 我有一个基于Java/Spring的web应用程序,它使用Oracle11g。当前,用户在登录时直接通过用户名/密码对系统表进行身份验证。 这不得不改变,所以我们创建了一个(常规的)新表,在那里存储所有的用户数据。我们将所有现有密码插入到新创建的表中。然而,密码似乎是以本站点描述的方式加密/散列的 我使用了ora_hash和dbms_obfuscation_toolkit.desdecrypt,但

  • 我正在尝试将wildfly身份验证迁移到elytron,并且除了一个问题之外,几乎所有内容都可以按照我想要的方式工作。 我们正在使用quartz调度程序运行作业。这些作业不受调用方原则的约束。使用 我能够将原则传播到以下EJB调用。这不再有效,原则始终是“匿名”。有没有一种方法可以对Elytron做同样的事情?

  • 尝试将Azure AD身份验证添加到具有. net核心2.1后端的Angular 7 webapp。 然而,我在请求过程中收到了CORS错误。 “访问位于的XMLHttpRequest”https://login.microsoftonline.com/.......“(重定向自”https://localhost:5001/api/auth/login“)起源”https://localhost

  • 我已经安装了OpenLDAP服务器。 如何在LDAP服务器中添加用户(条目)?以及如何打开该服务器的命令窗口,以便在其上运行ldap命令: :我的要求是:在我的应用程序中,我想对Openldap服务器中添加的用户进行身份验证,但我只能在windows os上安装Openldap服务器,但如何添加用户我无法获得方法。在Windows7操作系统上安装openLDAP whic时添加用户的方法是什么?这

  • 我想添加只允许经过身份验证的用户在Jitsi会议中创建会议的功能。我看到了外部API的jwt参数、config.tokenAuthUrl和lib-jitsi-met令牌文档,但我对如何将它们放在一起感到非常困惑。 现在,我的工作流程如下: 用户通过自定义应用程序登录谷歌。 用户被重定向到一个新的Jitsi会议,使用从Google登录信息派生的jwt参数。 我遇到的问题是验证这个令牌,以及如何设置它

  • 问题内容: 我想知道是否有一种方法让Dagger知道在有新数据可用时它应该重新创建对象。 我正在说的实例是我具有改造的请求标头。在某个时候(当用户登录时),我得到一个令牌,我需要将其添加到改造的标头中以发出经过身份验证的请求。问题是,我留下了相同的未经认证的改造版本。这是我的注入代码: 关于如何进行这项工作的任何想法? 问题答案: 请考虑使用 @oldergod* 提到的方法,因为它是 “官方的”