首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >访问Devise Config变量

访问Devise Config变量
EN

Stack Overflow用户
提问于 2012-06-28 01:17:02
回答 3查看 6.7K关注 0票数 23

在我的Rails应用程序中,从视图直接访问Devise配置变量的方法是什么?

我想展示Devise的:confirmable模块中的config.allow_unconfirmed_access_for。此变量在devise.rb初始值设定项中设置:

代码语言:javascript
复制
Devise.setup do
  config.allow_unconfirmed_access_for = 3.days
end

谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-06-28 10:36:35

在您的Devise模型上复制了devise.rb文件上的配置,因此如果您的Devise资源是User,您应该能够通过User.allow_unconfirmed_access_for访问它。

因此,在控制器上创建一个实例变量,并将该值赋给它,然后就可以在视图上显示它了。

票数 27
EN

Stack Overflow用户

发布于 2016-01-06 05:48:05

公认的答案不再正确。对于更新的Devise版本,配置选项被附加到主Devise模块上,例如Devise.allow_unconfirmed_access_for

票数 10
EN

Stack Overflow用户

发布于 2017-03-29 01:10:36

这回答了一个类似的问题:

OmniAuth配置存储在嵌套策略对象内的omniauths_config对象中

代码语言:javascript
复制
Devise.omniauth_configs

返回:

代码语言:javascript
复制
{:facebook=>
  #<Devise::OmniAuth::Config:0x007fa6db95aa68
  ....

然后通过symbol访问:

Devise.omniauth_configs[:facebook].strategy

代码语言:javascript
复制
{"setup"=>true,
 "skip_info"=>false,
 "client_id"=>nil,
 "client_secret"=>nil,
 "client_options"=>{"site"=>"https://graph.facebook.com", "authorize_url"=>"https://www.facebook.com/dialog/oauth", "token_url"=>"/oauth/access_token"},
 "authorize_params"=>{},
 "authorize_options"=>[:scope, :display, :auth_type],
 "token_params"=>{"parse"=>:query},
 "token_options"=>[],
 "auth_token_params"=>{},
 "provider_ignores_state"=>false,
 "access_token_options"=>{"header_format"=>"OAuth %s", "param_name"=>"access_token"},
 "scope"=>"email,public_profile,publish_actions",
 "info_fields"=>"email, first_name, last_name",
 "name"=>"facebook"}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11231687

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档