【发布时间】:2014-12-03 18:56:38
【问题描述】:
我在 Rails 4 应用程序中使用设计进行身份验证。几乎所有的应用程序都需要对用户进行身份验证,但是,有一些“公共”页面(条款和条件——诸如此类的东西)。
Devise 本身使用prepend_before_filter :require_no_authentication 公开sign up 和sign in 页面。但是,那个方法is intended only for devise controllers。并且设计似乎没有提供一种“适当”的方式来公开单个操作。
那么,将几个操作公开的最佳方式是什么?
目前我能想到的唯一方法是:
创建一个新的
public命名空间,并为公共操作提供单独的控制器,这些控制器继承自不执行before_filter :authenticate_user!的PublicController与上面相同,但放弃继承和命名空间。因此,
PublicController可以充当任何需要公开的内容的存储桶 - 在现阶段这并不多。
有没有更好的方法通过设计公开个人行为?
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-4 devise