2009-12-15 35 views
2

我有一个类继承自类User。明确从基类模块中的类继承

例如

MyClass类<用户

以我的代码库我有一个类用户

类用户

end

但是我也有一个插件,在模块TheirModule :: User中提供了一个User类。这是我的应用程序绑定的插件,目前我无法将其删除,但是这是我想要做的。

从控制台我可以访问MyClass,继承是正确确定的。然而,在运行应用程序时,似乎有些困惑,我想从中继承User类,因此继承失败。

有没有办法从我的User类明确继承和防止与TheirModule混乱::用户

回答

0
class MyUser < User 
end 

class MyClass < MyUser 
end 

这样MyClass的将来自自己MYUSER类,并从TheirModule继承::用户。

1

如果您希望MyClass继承自User类,则可以将User类放入模块中,例如MyModule。

class MyClass < MyModule::User 
end 
+0

我不知道任何其他解决方案,而不是这一个.... – khelll 2009-12-15 10:01:51

+0

反正我有可以参考的默认模块中的类定义而不是有把它转移到明确一个新的模块?基于这种变化的代码将会非常脆弱,并且这种变化将会变得非常微不足道。 – lyallward 2009-12-15 23:02:41