Rails app +单独的管理面板

时间:2016-12-06 14:58:31

标签: ruby-on-rails devise

我想制作一个允许人们注册特定类型活动的应用。 它不需要注册 - 您只需选择一个城市,一小时,并在表格中填入您的数据,点击"注册"或" Book"这就是全部。 城市列表将不时发生变化,我显然需要创建新的活动 - 在不同的城市,不同的地址等。

因此对于普通用户来说,它只是一个简单的页面,但对于管理员来说,应该有创建新事件的选项,显示所有注册参加活动的人等。 我知道Devise,AdminRails,CanCanCan,但作为初学者,我不确定如何隐藏普通用户的注册/记录可能性。

Devise将在登录后访问我的应用程序,这不是我的意图。我希望常规应用程序具有一些视图和表单,在某种意义上,单独的管理面板与常规CRUD - 创建事件,列出事件,列出用户,删除事件,删除用户。

我会对任何提示都很有兴趣。

1 个答案:

答案 0 :(得分:1)

添加身份验证时,您可以在ApplicationController上经典地添加before_action :authenticate_user!,以强制用户进行身份验证。

所以要么你不在这里打电话,只在管理员控制器上调用它 您在常规用户控制器中skip_before_action :authenticate_user!

添加一个只能在连接时访问的简单AdminController,然后当您尝试使用yourapp.com/admin时,您将被重定向到设计的登录表单。 (如果您需要多个管理控制器,请将它们命名为“管理员范围”。)

如果您不对广告进行广告,则您的用户不会注意或关注此特定管理区域。