问题标签 [clearance]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
42 浏览

ruby-on-rails - Rails 5 带间隙的地理定位

我目前正在使用 Clearance 进行身份验证。作为登录过程的一部分,我想确保我有用户的位置(存储在会话中)。

我的问题是如何在清关的情况下做到这一点?理想情况下,我只想在登录时执行查找(以节省网络流量/API 调用)。如果我找不到用户,那么我将拒绝登录。

我正在考虑使用警卫,但我似乎无法访问request.ipsession这有点破坏交易。我还试图避免重定向到只进行地理位置然后再次重定向的 URL。

有人对如何使这项工作产生良好的模型有想法吗?谢谢!

0 投票
2 回答
648 浏览

ruby-on-rails - Rails 间隙,单元测试控制器

我无法让 Clearance 身份验证与 Rails 控制器单元测试一起使用。我已按照https://github.com/thoughtbot/clearance “控制器测试助手”中的说明进行操作。您如何对需要身份验证的控制器进行单元测试?

我收到以下错误:

测试/test_helper.rb

测试/控制器/goals_controller_test.rb

0 投票
0 回答
165 浏览

ruby-on-rails - 导轨。重写间隙控制器

我尝试在间隙控制器中添加 js。用户控制器重写正常,但会话和密码控制器不起作用。

用户控制器(工作):

session_controller(不工作):

会话/new.html.slim :

会话/create.js.erb

我的路线:

怎么修?

0 投票
1 回答
528 浏览

ruby-on-rails - Rails 5 API应用程序返回带有设计登录页面的白屏

我正在使用 JWT 令牌开发仅 Rails 5 API的应用程序。

我想将 Rails Admin 用于内部流程,并想为员工配置 Devise(或 Clearance)进行身份验证,而不是直接将 JWT 令牌与 Rails Admin 集成。

我遇到的问题是,一旦我设置了设计或清除(控制器、模型和路由都在那里),登录屏幕就会返回一个空的 HTML 页面。

https://github.com/thoughtbot/clearance/issues/741中提到了一些与 Clearance 相关的问题,但我一直无法弄清楚为什么 HTML 无法加载。

Rails API 确实排除了一些中间件,但我不清楚哪个缺少或导致问题。谢谢。

0 投票
1 回答
310 浏览

ruby-on-rails - 清除 gem 重定向问题

您好,我正在使用清除 gem 进行用户身份验证。

到目前为止,一切都很完美,但我很困惑为什么即使在为我的页面索引视图设置了根路由之后,它仍然会将我重定向到清除 gem 的登录页面。

我查看了 github 文档说明,它没有列出其他解决方法。我做错了什么?

这是我的 routes.rb 文件的样子:

0 投票
1 回答
128 浏览

clearance - 禁止密码重置时清除失败

我正在使用许可并喜欢它,但我在重置密码时遇到了麻烦。我输入我的电子邮件以重置密码,这有效,但是当我尝试使用重置令牌导航到编辑密码页面时,我在禁止闪烁错误时遇到失败“请仔细检查 URL 或尝试再次提交表单”它把我重定向回来。我在测试中遇到了同样的错误。

我认为这与我的 before_action 语句有关,但我只是不知道如何解决它们。我研究过这样的问题无济于事

我确定这是一个愚蠢的问题,但我是新手,所以我非常感谢任何帮助。如果这还不够代码,请告诉我。

这是清关控制器。

编辑:routes.rb 的相关部分

0 投票
1 回答
265 浏览

ruby-on-rails - Rails 5:清除 - 用户 CRUD?

我目前正在使用https://github.com/thoughtbot/clearance 进行身份验证。

它允许我使用密码和电子邮件注册和登录。

但我想知道如何将其配置为生成用户模型的 CRUD 页面,因为我实际上想查看注册用户列表。

0 投票
1 回答
70 浏览

ruby-on-rails - 在主应用程序中使用 Clearance 对引擎进行身份验证

语境

我想在同一台服务器上运行多个 Rails 应用程序,方法是将它们实现为主应用程序中的引擎。主应用程序应包含身份验证逻辑,例如用户和角色。


问题

我正在为我的用户系统使用Thoughtbot的clearance,但是当我想通过before_action :require_login在其控制器中使用引擎来验证引擎时,我收到以下错误:

ActionController::UrlGenerationError in MyEngine::PagesController#index. No route matches {:action => "new", :controller => "clearance/sessions"}

我知道这是因为引擎正在其命名空间内寻找间隙控制器,但我如何让引擎在主应用程序中查找?是否有一个简单的解决方案,它足够灵活,在向系统添加新引擎时不会麻烦?

编辑:

我已经尝试过从主应用程序 ApplicationController 继承,方法是

class ApplicationController < ::ApplicationController

0 投票
1 回答
164 浏览

ruby-on-rails - 如何在 Clearance 中禁用电子邮件验证

我正在尝试让Clearance使用 AWS Dynamo 作为后端存储。我遇到的问题是我无法获得进行电子邮件唯一性验证的许可,因为它无法通过 SQL 查询进行标准的 ActiveRecord 唯一性验证,所以它不能这样做。

根据代码中的注释,我应该能够让我的User对象返回email_optional? true,这应该会禁用电子邮件的唯一性验证。所以我有:

但是,当我尝试创建用户时出现错误,更重要的puts是,没有执行:

更新:@spickermann 的回复提醒我,我应该注意到我也尝试过不进行子类化ActiveRecord::Base(通过ApplicationRecord)。它给出了一个不同的错误:

0 投票
0 回答
206 浏览

ruby-on-rails - 在门卫中访问用户对象

我正在尝试对门卫和门卫文档使用许可,我必须像这样访问 User 对象:

https://github.com/doorkeeper-gem/doorkeeper/wiki/Authenticating-using-Clearance-or-DIY

但我env从哪里得到变量?另外,我试图在其中找到用户session[:current_user]session[:user]但它不存在。

谢谢