Tag: 设计

Rails 3.0通过回答问题来设置重置密码

我正在使用带有rails 3的设计。在用户模型中,我已经为该问题的问题和答案创建了字段。 我想知道如何在以下逻辑中实现忘记密码: 忘记密码页面用户输入用户名 在下一步,应用程序应显示存储在db中的问题。 如果答案与存储在db中的值匹配,则用户回答问题并且app匹配答案。 它重定向到编辑可以更新密码的密码页面。 我试图覆盖设计的密码控制器,但卡住了。 提前感谢您的帮助。 注意:我是rails的新手,也是我的第一个项目

设计中未定义的局部变量或方法`resource_class’

我正在尝试添加一个名为username的属性来设计但rails在以下代码行中显示错误我正在使用rails 4.0.0并设计3 def configure_permitted_parameters devise_parameter_sanitizer.for(:sign_up) { |u| u.permit(:username, :email, :password, :password_confirmation) } end 控制器应用 class ApplicationController < ActionController::Base # Prevent CSRF attacks by raising an exception. # For APIs, you may want to use :null_session instead. protect_from_forgery with: :exception before_action :configure_permitted_parameters if :devise_controller? protected def configure_permitted_parameters devise_parameter_sanitizer.for(:sign_up) { |u| u.permit(:username, :email, :password, :password_confirmation) } end […]

当两个路由指向同一模型时,使用Devise resource_name发出问题

我有两条路线为我的api v1和v2指向同一个Devise模型,路由如下: scope :api do namespace :v1 do devise_for :users, :controllers => {:registrations => “devise/v1/users_registrations”, :sessions => “devise/v1/users_sessions”, :passwords => “devise/v1/users_passwords”} end end scope :api do namespace :v2 do devise_for :users, :controllers => {:registrations => “devise/v2/users_registrations”, :sessions => “devise/v2/users_sessions”, :passwords => “devise/v2/users_passwords”} end end 我的问题是当请求被发送到这些API中的任何一个时,Devise resource_name是’v1_user’或’v2_user’,但发送的参数具有params [‘user’]所需的值。 我从Devise helpers.rb devise_parameter_sanitizer方法中获取此信息。 当Devise :: ParameterSanitizer.new(resource_class,resource_name,params)params如下所示: result = […]

编辑用户详细信息可创建新用户 设计,Rails 4

我有奇怪的问题,以前创建的表单而不是更新用户详细信息,如电子邮件或名称创建具有给定详细信息的新用户。 我的表单:我从views / devise / registrations / edit中获取的代码示例 true, :id=>”user-edit”},remote: true, format: :json) do |f| %> “user-input form-control”, :id=>”user-name” ,:placeholder=> “Lietotājvārds*”,:”data-parsley-group”=>”f1″ %> “user-input form-control”, :id=>”password”,:placeholder=> “E-pasts *”,:”data-parsley-group”=>”f2″ %> “off” ,:class=>”user-input form-control”, :id=>”password”,:placeholder=> “Vecā parole* “,:”data-parsley-group”=>”f3” %> “user-input form-control”, :id=>”password”,:placeholder=> “Jaunā parole* vismaz 8 simboli “, :”data-parsley-group”=>”f3” %> “user-input form-control”, :id=>”password”,:placeholder=> “Atkārtot paroli * vismaz 8 […]

如何在设计中禁用加密密码?

如何在设计中禁用加密密码?

Rails为某些用户类型设计了禁用密码恢复function

在我的Rails项目中,我有不同类型的用户,其中一个用户具有user_status :admin ,与其他用户不同,它具有编辑内容的完全权限。 出于显而易见的原因,我想为这些类型的用户添加额外的安全性,特别是完全禁用密码恢复。 覆盖标准Devise密码恢复( :recoverable Devise模块)方法的正确方法是什么,以便当用户尝试为管理员用户( user_status == “admin” )的用户获取重置密码链接时,系统会返回“标准电子邮件未找到”消息? 这有点像未回答的问题:将设计密码恢复限制为仅限某些用户 先感谢您。

Rails 5设计omniauth-facebook错误:抱歉,出了点问题

我正在按照Devise的官方指南从顶部到本节 。 我的CALLBACK_URL是http://localhost:3000/users/auth/facebook/callback ,我认为这可能是问题,但我不确定。 当我点击登录Facebook时,我遇到了这个错误: 抱歉,出了一些问题。 在这个链接上: https://www.facebook.com/v2.6/dialog/oauth?client_id=193217371133539&redirect_uri=https%3A%2F%2Flocalhost%3A3000%2Fusers%2Fauth%2Ffacebook%2Fcallback&response_type=code&scope=user%2Cpublic_repo&state=3913c12e0e4ce8b422732c9159c0fb1fb7351d100487849d Rails版本:Rails 5.0.0.1 Ruby版本(使用rbenv):ruby 2.3.1p112(2016-04-26修订版54768)[x86_64-darwin16]

使用设计加密其他表列

我正在使用bcrypt加密器为密码列设计 rails身份validation。 我有一个用户表,存储我想要加密的敏感信息 是否可以使用设计加密和解密其他用户列(除了密码)?

翻译设计登录链接

我使用此链接将登录链接放在我的应用程序上: https://github.com/plataformatec/devise/wiki/How-To:-Add-sign_in,-sign_out,-and-sign_up-links-to-your-layout-template 我还为法语添加了一个翻译文件: https://gist.github.com/871074 我要求rails使用french作为默认值: config.before_configuration do I18n.load_path += Dir[Rails.root.join(‘config’, ‘locales’, ‘*.{rb,yml}’).to_s] I18n.locale = :fr I18n.default_locale = :fr config.i18n.load_path += Dir[Rails.root.join(‘config’, ‘locales’, ‘*.{rb,yml}’).to_s] config.i18n.locale = :fr # bypasses rails bug with i18n in production\ I18n.reload! config.i18n.reload! end config.i18n.locale = :fr config.i18n.default_locale = :fr 但是我的按钮/标签没有翻译: 它写“记住我”,但我想要法语翻译。 我做错了什么? 谢谢

Rails设计限制管理员用户的IP地址访问

我的项目使用Devise进行身份validation(相当标准)。 用户可以是普通用户,也可以是管理员用户。 我现在要求将管理员用户的登录限制为某些IP地址(在防火墙后面)。 我简单地考虑使用Rails路由约束,但这不适用,因为普通用户和管理员用户通过相同的登录页面登录。 所以,我想要的是: 让Devise处理身份validation 挂钩到身份validation周期并validation管理员: 如果登录用户的类型为:administrator,则validationIP地址 如果有效IP,则继续 如果IP地址不在可接受的范围内,则不要登录 我该如何在这里挂钩Devise登录周期? 我如何根据自定义validation接受或拒绝登录尝试? 我正在使用Rails 4.2并设计4.1如果相关