Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 创建注册--新手用户_Ruby On Rails_Devise - Fatal编程技术网

Ruby on rails 创建注册--新手用户

Ruby on rails 创建注册--新手用户,ruby-on-rails,devise,Ruby On Rails,Devise,我已经搜索了几天,试图找出是否有人问过或回答过这个问题,但我没有任何运气。这也是我关于stackoverflow的第一个问题 我正在寻找一个人给我指出正确的方向 我设计了设置并完美运行了两个模型--Admin和User 我需要有管理员创建一个研讨会或类和用户注册或为研讨会。我不知道我是否应该尝试一个has_many_和_属于_many或has_many:through,或者是否有一些事件注册宝石可以更好地解决这个问题 任何指点都将不胜感激。有很多方法可以解决这个问题。不过,您不需要创建两个Des

我已经搜索了几天,试图找出是否有人问过或回答过这个问题,但我没有任何运气。这也是我关于stackoverflow的第一个问题

我正在寻找一个人给我指出正确的方向

我设计了设置并完美运行了两个模型--Admin和User

我需要有管理员创建一个研讨会或类和用户注册或为研讨会。我不知道我是否应该尝试一个has_many_和_属于_many或has_many:through,或者是否有一些事件注册宝石可以更好地解决这个问题


任何指点都将不胜感激。

有很多方法可以解决这个问题。不过,您不需要创建两个Desive模型来实现这一点。您可以只拥有一个单用户模型,并将其作为字符串赋予:role属性,将其默认为某个已知角色,比如“visitor”

您可以考虑安装一个简单的ACL,如<代码> CANCAN < /COD>或.< /P> 这将允许您控制对各种控制器CRUD操作的访问-这就是所谓的“授权资源”(毕竟是RESTful)的意思-当然,在这样的设置中,管理员可以看到比普通用户更多的选项

“旧式”方法是设置一个
名称空间:admin
,该名称空间将在应用程序中的
/admin/
下处理。您仍然可以让管理员和用户通过您在Desive中设置的公共登录路径登录

然而,对于管理员和用户来说,拆分设计模型是有好处的,他们的会话将是完全分开的,有些人会认为这是“更安全”的。会话劫持仍然是通过单一模型+角色方法实现的