2012-07-27 55 views
0

我正在做一个电话号码的多态协会志愿者工作(后来到了其他东西),目前我坚持以下错误:Rails的多态关联未初始化的常量

uninitialized constant HumanVolunteer::PrimaryPhone 
app/controllers/human_volunteers_controller.rb:44:in `new' 
app/controllers/human_volunteers_controller.rb:44:in `create' 

这里我PHONENUMBERS型号:

class PhoneNumber < ActiveRecord::Base 
    attr_accessible :notes, :number 

    belongs_to :phone, :polymorphic => true 
end 

这里是我的HumanVolunteers型号:

class HumanVolunteer < ActiveRecord::Base 

    attr_accessible :firstName, :lastName, :homeaddressid, :notes, :status, :workdaddressid, :home_adr, :work_adr, :primaryPhone 
    has_one :primaryPhone, :as => :phone 

    def home_adr=(home_adr_arg) 
    # Home ADR 
    home_adr = Address.new(home_adr_arg) 
    if home_adr.save 
     self.homeaddressid = home_adr.id 
    end 
    end 

    def work_adr=(work_adr_arg) 
    # Work ADR 
    work_adr = Address.new(work_adr_arg) 
    if home_adr.save 
     self.workaddressid = work_adr.id 
    end 
    end 
end 

我的电话号码和human_volunteers模式:

表:human_volunteers

id integer 
status character varying(255) 
homeaddressid integer  
workdaddressid integer  
notes text   
created_at timestamp without time zone 
updated_at timestamp without time zone 
firstName character varying(255)  
lastName character varying(255) 

表:PHONE_NUMBERS

​​

当我尝试在任何输入来创建一个新的志愿者在这里的错误是发生是我当前的示例请求:

{"human_volunteer"=>{"primaryPhone"=>"5555555555", 
"firstName"=>"", 
"notes"=>"", 
"work_adr"=>{"city"=>"", 
"state"=>"", 
"zipcode"=>"", 
"line1"=>"", 
"line2"=>""}, 
"home_adr"=>{"city"=>"", 
"state"=>"", 
"zipcode"=>"", 
"line1"=>"", 
"line2"=>""}, 
"lastName"=>""}, 
"authenticity_token"=>"RCPTxZpzytYXcDEUo0czRxpI4A3Qw1ErwcIBJ92RhLA=", 
"utf8"=>"✓"} 

注意:ia也有一个地址类,但我已经得到了这个工作,所以我没有把它与这个帖子混为一谈。

从论坛上浏览看起来似乎是其他人的主要问题是塑化,但据我所知,我已经正确地塑造了一切。

我也尝试添加一个phone_id或primaryPhone_id到人类志愿者表,但它没有帮助。

非常感谢你, - 肯

回答

8

has_one需要知道哪些类的指的。

 
    has_one :primary_phone, :class_name => "PhoneNumber", :as => :phone 
+0

谢谢,你能告诉我哪里有记录,我看了整个轨道的东西,并没有看到任何关于它。我看到它的唯一地方是在“2.10自我加入”下。也还没有更正,因为现在我越来越 'PhoneNumber(#70073652768560)预计,得到的字符串(#70073736791040)' – 2012-07-27 21:01:46

+0

好吧,我想我看到发生了什么,现在无关的问题。 我会继续关注它,感谢您的帮助。 – 2012-07-27 21:29:13

相关问题