Ruby on rails 3 针对不同数据类型的多用户,设计了一种新的mogoid

Ruby on rails 3 针对不同数据类型的多用户,设计了一种新的mogoid,ruby-on-rails-3,devise,mongoid3,Ruby On Rails 3,Devise,Mongoid3,我正在使用rails 3.2.7、mongoid 3,并且我正在尝试使用Desive for users帐户 在我开始之前:我一直在寻找我的问题,我读了很多教程,但没有一本适合我的需要 我有类似的问题,比如 但我使用的是mongodb,所以我认为问题并不完全相同 我有3种类型的用户: 经理,可以有许多地方,并可以管理它们(编辑信息) 用户可以搜索地点(即使没有用户可以)并创建他们的地点列表。用户还可以评论和记录地点 管理员谁可以编辑/删除任何东西,所以管理员是上帝 所以,他们都有不同的数据(除了

我正在使用rails 3.2.7、mongoid 3,并且我正在尝试使用Desive for users帐户

在我开始之前:我一直在寻找我的问题,我读了很多教程,但没有一本适合我的需要

我有类似的问题,比如

但我使用的是mongodb,所以我认为问题并不完全相同

我有3种类型的用户:

  • 经理,可以有许多地方,并可以管理它们(编辑信息)
  • 用户可以搜索地点(即使没有用户可以)并创建他们的地点列表。用户还可以评论和记录地点
  • 管理员谁可以编辑/删除任何东西,所以管理员是上帝
  • 所以,他们都有不同的数据(除了登录信息),我不知道什么解决方案是最好的

    如果他们有相同的数据和不同的操作,STI会很好,但数据也不同(但我使用的是mongoid,所以可能会很好?)

    具有角色的单用户模型是另一种解决方案,但我不知道如何存储不同的数据,可能是多态的?我不完全理解如何使用Desive和cancan实现它

    也许有第三个

    我知道什么是STI,多态关联,以及如何与CanCan实现角色,但问题是我不知道如何将它们与Desive联系起来

    如果登录表单很少或只有一个,那没关系。我也不必使用Desive

    我发现关于如何在多用户应用程序中使用Desive、monogid和roles的教程/示例不多,但当用户存储相同的数据时,这些教程/示例非常有用,因此不适合我

    你能给我一些建议,或者一个可以帮助我的链接吗


    感谢帮助:)

    我建议为不同的用例构建不同的控制器。不要在数据中构建不同视图的依赖关系。这样,您就可以自由地将数据用于其他用例或其他用户组,而无需直接更改


    只需为不同的用例创建控制器。这样,您可以随时更改它们,而无需更改数据模型。

    您可以为不同的用户创建不同的控制器,并存储数据,而不依赖于角色。只需为不同的用例创建控制器。现在,我使用一个控制器创建STI,但不使用De虎钳。我是白手起家做的。我将按照你的建议做,我将使用带有3个不同控制器的Desive。