与模块扩展对象时,如果我做到以下几点:古怪的行为在红宝石
user = User.new
user.extend Customer
user.is_a? Customer == true
它工作正常。
但是,如果我做了以下(其中profile是mongoid模型和用户嵌入):
profile = Profile.all.first
profile.user.extend Customer
profile.user.is_a? Customer == false
用户不再是一个客户。必须有一个简单的理由,但我看不到它。
编辑:用户和配置文件是mongoid模型,即。 profile.user.class =用户和profile.class =个人资料。
刚更新的问题。 – stantona 2012-04-19 16:15:23
什么是'user.class'和什么是'user.class.ancestors'?您仍然没有提供完整的,可重复的测试用例。 – Phrogz 2012-04-19 16:15:29