Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails STI和工厂女孩轨道问题_Ruby On Rails_Factory Bot_Rspec3 - Fatal编程技术网

Ruby on rails STI和工厂女孩轨道问题

Ruby on rails STI和工厂女孩轨道问题,ruby-on-rails,factory-bot,rspec3,Ruby On Rails,Factory Bot,Rspec3,在处理单个表继承类和factory girl时,我遇到了类设置不正确的问题 我的工厂是: factory :team do name "Test name" store_password 'password' end factory :sales_team, class: Team, parent: :team do type 'SalesTeam' end factory :retail_sales_team, class

在处理单个表继承类和factory girl时,我遇到了类设置不正确的问题

我的工厂是:

  factory :team do
        name "Test name"
        store_password 'password'
  end

  factory :sales_team, class: Team, parent: :team do
        type 'SalesTeam'
  end

  factory :retail_sales_team, class: Team, parent: :team do
        type 'RetailSalesTeam'
  end
(我还使用嵌套在工厂内的:team do:sales_团队和:retail_sales_团队进行了尝试)

按照我的规范,我是这样做的

@team = FactoryGirl.create(:retail_sales_team, name: "Test Team")
如果我那时打电话

@team.class.name #=> "Team"
当我试图将@team传递给一个

belongs_to :team , class_name: 'RetailSalesTeam'
我得到了错误

 Failure/Error: @sale = FactoryGirl.create(:sale, kpi: @kpi, user: @user, team: @team)
 ActiveRecord::AssociationTypeMismatch:
   RetailSalesTeam(#70151785667180) expected, got Team(#70151730184960)

让我知道,如果有任何其他信息,我可以提供和感谢提前

如果你不想让他们成为团队的例子,为什么要说
class:Team
?天哪,我真不敢相信答案这么简单。。。非常感谢你的帮助!把它写下来作为答案,我会接受的。