2

我正在开发一个工作门户。我对如何创建和管理用户感到困惑。例如:我的应用程序中将有 3 种类型的用户(以后可能会扩展):公司、顾问和候选人。他们每个人都将拥有完全不同的角色和对管理员(即帐户)面板/控制台的访问权限,或者您可以说他们将拥有完全不同的视图来管理他们的帐户。因此,如果用户使用公司帐户登录,他/她应该能够创建工作并更新公司资料,如果用户以顾问身份登录,那么他/她应该能够代表其他公司(谁可能会或可能不会在网站/应用程序上注册),还应该可以浏览/搜索公司的工作,并且应该能够发布申请(即 代表候选人(可能或可能尚未在网站/应用程序上注册)的候选人申请工作)。而且,如果用户以候选人身份登录,那么他/她应该能够创建他们的简历/简历、搜索工作并申请公司发布的工作。

这是我的想法:创建一个用户模型,然后为公司、顾问和候选人拥有 STI(单表继承)。但是,STI 迟早会变得复杂。后来,我想为每个模型创建不同的模型,但随后将重复登录/注册和其他类似活动的代码,这意味着没有 DRY。

我想遵循最好的方法。那么,想知道专家将如何解决这种情况吗?谢谢。

4

1 回答 1

2

一些建议:

  • 查看 CanCan gem 以了解用户角色。
  • 查看设计一个登录系统,您可以在其中登录用户。

  • 您可以使用活动管理 gem 来创建管理后端( crud, create remove update delete )用户。或者自己构建一个管理后台

  • 还可以查看 railscasts.com(cancan 上有演员表,也可以设计!),了解有关 rails 提示和技巧的一般 ruby​​。http://railscasts.com/episodes/192-authorization-with-cancan

  • 查看“micheal hartl ruby​​ on rails 课程”,大致了解模型、控制器和视图如何相互关联。
于 2013-10-22T07:47:49.550 回答