问题标签 [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.
ruby - 阅读清关源代码时的烦恼
1号
既然guards是一个空数组,那么guard_class
指的是什么?它如何运行新方法?你能解释一下这行代码是做什么的吗?
2号
signed_in
? 是 的私有方法SignInGuard
。我知道只有' self
'才能调用它。在这里,session.signed_in
?为什么有意义?
ruby - 在 Rails 4 中注册多模型并获得许可
所以我想在注册为我的应用程序的新用户时创建一个公司。我使用https://github.com/thoughtbot/clearance进行身份验证。
我有这两个迁移:
和
我的模型如下所示:
这是我修改后的 Clearance 控制器:
最后是我的表格:
我可以完美地提交我的表单,但是在 rails 控制台中找到用户对象时我的 company_id 为零。
任何人都知道我做错了什么?
提前致谢!
ruby-on-rails-4 - “注册”过程失败
我对rails比较陌生,所以在回答时请记住这一点。:)
我已将clearance
gem 添加到我的 rails 应用程序中。我执行了rails g clearance:views
,没有麻烦。接下来我执行了rails g clearance:specs
. 除以下一项外,所有间隙规格均通过:
/spec/features/clearance/visitor_signs_up_spec.rb:13 # Visitor signs up with valid email and password
这是 rspec 错误消息:
Visitor signs up with valid email and password
Failure/Error: expect_user_to_be_signed_in
expected to find button "Sign out" but there were no matches
# ./spec/support/features/clearance_helpers.rb:35:in `expect_user_to_be_signed_in'
# ./spec/features/clearance/visitor_signs_up_spec.rb:16:in `block (2 levels) in <top (required)>'
# -e:1:in `<main>'
有趣的是,当我尝试手动遵循规范时,注册过程完成但它不会创建新会话。换句话说,我必须在注册后登录。/spec/features/clearance/visitor_signs_up_spec.rb:13
根据该规范,这似乎与 中发生的行为相匹配,尽管它不是预期的行为。
使用相同方法的其他规范expect_user_to_be_signed_in
都没有这个问题。
另外,我的 rails 服务器日志没有显示任何错误。
我不知道在哪里可以缩小问题的范围。你怎么看?
更新:发现错误!
更新:我在成功保存新用户后通过更改重定向 url 修复了之前的错误。我还必须将以下内容添加到我的UsersController
:
有任何想法吗?
ruby-on-rails - 在 Clearance 用户创建上创建依赖记录
我只是想在用户注册时创建另一条记录。我认为以下是 Clearance 触及我的应用程序的唯一地方,不计算视图。
ruby-on-rails - 仅适用于管理仪表板的清除身份验证
我有一个公开可用的 Rails 应用程序,但有一个只能由注册用户访问的管理仪表板。
我正在将 Thoughtbot Administrate 用于仪表板部分,并且我正在尝试使用 Clearance 实现仪表板身份验证。
我的应用程序没有对公共部分进行任何身份验证,因此我将线路include Clearance::Controller
从ApplicationController
to移到Admin::ApplicationController
并将登录/注销按钮放在仪表板的导航栏中,但是,当我单击登录按钮时,应用程序向我显示我的应用程序的身份验证表单,而不是仪表板部分的身份验证表单(我可以说是因为两者使用的样式不同),所以我的问题是,有没有办法只为管理部分安装许可,就像只安装它一样管理员命名空间?
清关部分rake routes
为:
谢谢您的帮助!
ruby-on-rails - 会话控制器上显示的 Rails 未定义方法错误
我正在构建一个应用程序,我正在尝试使用许可登录。我已经构建了登录和注册页面。它们工作得非常顺利,但问题是当我试图在用户输入任何错误的电子邮件或密码时显示错误,所以我的<% if :session.errors.any? %>不工作。它说:session:Symbol
[Session_controller]
的未定义方法“错误”
[会话/_form.html.erb]
ruby-on-rails-4 - 使用 Rails 的跨应用会话持久性(thoughtbot/clearance)
我在 example.com 中安装了一个使用 Clearance 作为身份验证 gem 的 Web 应用程序,我目前正在 jobs.example.com 中开发一个独立的 Rails 应用程序。
我想知道 Clearance 是否在不同子域上托管的 Rails 应用程序中内置了用户会话持久性配置。我是否需要通过 API 从原始应用程序 (example.com) 导入用户身份验证详细信息并操作 cookie 来执行此操作?
任何帮助/建议将不胜感激!
ruby-on-rails - 允许用户使用 URL 令牌访问受保护的页面
我正在使用 Clearance gem 进行身份验证。我在应用程序中有一个页面,我想允许任何人访问,前提是他们在 URL / Session 中有一个安全令牌。他们不必是系统中的用户。
这对 Clearance 可行吗?关于我应该如何进行的任何提示。最初我认为我应该覆盖require_login
and current_user
。这是一个好方法吗?
ruby-on-rails - 在 Rails 5 中阻止关联验证
使用 Rails 5,我正在尝试实现 Omniauth-Facebook 和 Clearance 以进行用户身份验证。
注意:我的代码和这个 Gist完全一样
我已经让它大部分工作了。然而,当使用 Facebook 进行注册时(即用户从未访问过该站点),Rails 会抛出一个错误,说Validation failed: User must exist
. 我已将问题范围缩小到 Gist 中的这个块:
当它击中它时,它会尝试在create!
没有auth.user
对象存在的情况下,并且失败。以下是sessions
控制器的相关代码:
我在 Gist 中唯一遗漏的是他的Authentications
桌子的结构。使用我找到的上下文线索,我创建了这个表:
如果需要更多信息,我会提供我能提供的
ruby-on-rails - 为什么清关警卫检查签到?
通关守卫的例子似乎都在检查signed_in?
。这让我很困惑,因为它似乎signed_in?
不应该设置为 true,直到用户通过了安全防护。我认为警卫的全部目的是防止登录。