草庐IT

Devise-bascamper

全部标签

ruby-on-rails - 使用 Rails 4 和 Devise 发送电子邮件时出错(连接被拒绝,端口 25)

我在发送电子邮件时遇到了一些大问题。我尝试过多种做事方式;使用gmail、mailgun、sendgrid、mailgungem等,一点运气都没有。出于某种原因,它尝试使用端口25发送,但如下所示,我指定了端口587。我得到的错误是:Errno::ECONNREFUSED(连接被拒绝-connect(2)for"localhost"port25):我的development.rb文件如下:config.action_mailer.default_url_options={:host=>'localhost:3000'}config.action_mailer.delivery_meth

ruby-on-rails - 如何将 trackable 添加到现有的 Devise 设置中?

我正在尝试使用Devisegem在RoR应用程序中获取上次登录日期时间。在我的一个迁移文件中,我注意到#t.datetime:last_sign_in_at字段等:##Trackable#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所以问题是:如何为我的用户激活此字段以便稍后在我的应用程序中调用它?我应该取消注释吗?

ruby - Devise、Omniauth 和 Twitter

我正在开发一个使用devise和omniauth并遵循https://github.com/plataformatec/devise/wiki/OmniAuth%3A-Overview中给出的示例的Rails3应用程序它适用于Facebook帐户,但当我尝试添加Twitter身份验证时,我收到“401未经授权”的响应。为了追踪问题,我将api.twitter.com的URL切换为http并转储了网络流量,它看起来像是两次POST到/oauth/access_token。我第一次收到200响应,第二次收到401。在这两者之间,它使用“GET/1/account/verify_creden

ruby-on-rails - rails : How to restrict signup to admin using Devise

我正在尝试将注册限制为Devise管理员。如果可能的话,我想暂时避免使用CanCan。我创建了一个单独的DeviseAdmin模型,如此处选项#1中所述:https://github.com/plataformatec/devise/wiki/How-To:-Add-an-Admin-Role.接下来,我为用户设置了一个CRUD界面,如下所述:https://github.com/plataformatec/devise/wiki/How-To:-Manage-users-through-a-CRUD-interface.我想通过在用户Controller中使用类似before_fil

ruby-on-rails - 将默认角色添加到 Devise 用户模型

在尝试向我的项目添加基于角色的身份验证(使用CanCan和Devise)时,我发现有两种保存角色的方法:第一种是“HasandBelongs_to”方式,第二种只是将角色保存在用户表中的新字段。所以,问题是,我如何以第一种方式定义默认用户角色,以及我应该选择哪种方式来定义第二种方式中的默认角色(在迁移中设置默认角色或编辑Devise的用户Controller?)另外,我应该使用这种方法还是使用gem更好?附言我已经阅读了TonyAmoyal的教程,但没有在那里找到答案。 最佳答案 如果我正确理解了这个问题,那么这对我有用:Rubyo

ruby-on-rails - Rails 4 + Devise - 更新用户帐户时不允许的参数

我有以下设置:routes.rbdevise_for:users,:path_names=>{:controllers=>{:omniauth_callbacks=>"omniauth_callbacks",:registrations=>"registrations"}和RegistrationController:classRegistrationsController但每次我尝试更新用户数据时,我都会收到此错误消息:Unpermittedparameters:tw_account,fb_account但是当我用这两个字段创建一个新帐户时,它们就被保存了。如何使它们可更新?谢谢

ruby-on-rails - 扩展 Devise 的 SessionsController

我正在尝试向Devise的SessionsController添加一个before_destroy过滤器。这是我尝试过的:我创建了一个包含before_destroy过滤器的模块和另一个包含我希望它调用的方法的模块。moduleUserTrackerprepend_before_filter:stop_tracking,:only=>[:destroy]moduleTrackerStopperdefstop_tracking#DostuffendendincludeTrackerStopperend然后我尝试使用UserTracker模块扩展SessionsController。Dev

ruby-on-rails - 创建一个像 Devise 的 current_user 一样的方法以在任何地方使用

我允许我的用户拥有多个配置文件(用户有多个配置文件),其中一个是默认配置文件。在我的用户表中,我有一个default_profile_id。如何创建像Devise的current_user这样的“default_profile”,我可以在任何地方使用它?我应该把这条线放在哪里?default_profile=Profile.find(current_user.default_profile_id) 最佳答案 Devise的current_user方法如下所示:defcurrent_#{mapping}@current_#{mappi

ruby-on-rails - 使用 Minitest 和 Devise 进行的 Controller 测试失败

在使用Devise的Rails3.28应用程序中,我设置了一个Controller,使用ifuser_signed_in?检查用户是否登录。一旦测试命中这条线,我总是得到一个undefinedmethod'authenticate!'对于nil:NilClass错误。我想在没有用户登录的情况下测试一些代码。我认为我需要根据DeviseWikihere中指定的选项设置测试,但是,所有说明都与rspec有关。特别是,我认为我需要具备以下条件才能在minitest中工作:RSpec.configuredo|config|config.includeDevise::TestHelpers,:t

ruby-on-rails - 使用 Devise 发送重置密码指令

我正在尝试使用devise和Rails发送重置密码指令。用户单击“忘记密码链接”,然后输入电子邮件地址以接收重置密码的说明。我看到电子邮件已在开发日志中发送,但我没有收到测试电子邮件,并且看到以下错误。关于我做错了什么的任何想法?Timeout::Error-executionexpired在user_mailer.rb中,我有以下内容:classUserMailerENV["EMAIL_ADDRESS"]defreset_password_instructions(record,opts={})mail(:to=>record,:subject=>"ResetPasswordInst