我有一个用户模式:类有相同的名字
class User < ActiveRecord::Base
end
这个模型是用来存储所有的企业用户
然后我想有我的工作场所的命名空间内的另一个用户模型:
class Workplace::User < ActiveRecord::Base
end
这个类在自己的工作岗位可用于我的用户的用户
它不工作和以下错误消息时上升我想迁移:
Expected .../app/models/workplace/user.rb to define User
我没有使用不同的名称,型号这个问题,但我想使用相同的名称(更有意义,我.. )
我怎么能?谢谢!!!
个人而言,我认为这是一个糟糕的主意,因为您现在必须跟踪您在代码中处理的用户类型。对我来说,这听起来像你有应用程序用户和工作场所用户。为什么不只有AppUser和用户?或者使用相同的模型,使用适当的关联,并使差异消失? –
我不能使用相同的模型,因为我有多对多的关系。用户是“公司目录”,而Workplace :: User是在工作场所工作的用户的个人目录。另一种方法是让该课程脱离该模型,并创建一个WorkplaceUser(或任何其他名称)类,但是我尝试这种方式,因为路由似乎更清晰。我现在有workplace_users_path而不是有workplace_workplace_users_path。但我对轨道很陌生,我仍然在寻找自己的方式。我愿意接受任何建议...... – ndemoreau
为什么你不使用Single Table Inheritance?一切都会更清洁 – apneadiving