我想在用户模型及其子类成员,订阅者和工作人员的Rails应用程序中设置单表继承。Rails单表继承问题
我为每个模型文件:user.rb,member.rb等
用户模型定义:class User < ActiveRecord::Base; end;
我子类的其他型号为这样:class Member < User; end;
等。
在我的用户表中,我有每个类需要的所有字段以及类型字段。现在,当我去到控制台,并尝试创建一个新的实例说,会员或订户,我得到以下错误:
TypeError: can't dup NilClass from /Library/Ruby/Gems/1.8/gems/activerecord-2.3.4/lib/active_record/base.rb:2184:in 'dup' from /Library/Ruby/Gems/1.8/gems/activerecord-2.3.4/lib/active_record/base.rb:2184:in 'scoped_methods' from /Library/Ruby/Gems/1.8/gems/activerecord-2.3.4/lib/active_record/base.rb:2188:in 'current_scoped_methods' from /Library/Ruby/Gems/1.8/gems/activerecord-2.3.4/lib/active_record/base.rb:2171:in 'scoped?' from /Library/Ruby/Gems/1.8/gems/activerecord-2.3.4/lib/active_record/base.rb:2439:in 'send' from /Library/Ruby/Gems/1.8/gems/activerecord-2.3.4/lib/active_record/base.rb:2439:in 'initialize' from (irb):6:in 'new' from (irb):6
的Rails知道子模型存在,因为当我只需拨打会员控制台或订阅者,我得到返回的类定义。
我读过简单的文档,但我必须错过什么?
您能否提供触发此错误的语句? – EmFi 2009-10-16 19:01:53
也请提供您的迁移创建用户表。 – Jared 2009-10-17 02:20:55