可安装引擎中的Devise + Omniauth:未定义方法`user_omniauth_authorize_path'

时间:2013-07-11 17:37:09

标签: ruby-on-rails devise omniauth

我一直在尝试使用devise + omniauth设置我的引擎进行身份验证。到目前为止一切似乎都没问题,除非我配置omniauth提供程序,例如twitter,部分devise / shared / _links.erb(我已经安装/复制到我的引擎)调用omniauth_authorize_path(resource_name,provider),后者又尝试调用似乎不存在的#{resource_name} _omniauth_authorize_path。 (未定义的方法`user_omniauth_authorize_path')

这是我的(真的很短)routes.rb,devise.rb和模型,user.rb: https://gist.github.com/pgn84/5944323

所有这些都在引擎中。主机应用程序仅在routes.rb

中安装引擎

知道我在这里可能缺少什么吗?应该在哪里定义user_omniauth_authorize_path?

谢谢!

ps:我在rails 4.0.0并设计3.0.0.rc

1 个答案:

答案 0 :(得分:2)

你应该这样称呼它

my_engine.user_omniauth_authorize_path