我有一个单表继承数据模型,其中CityPage < Destination
。这很好。
现在我添加了第二种类型CountryPage < Destination
,我的测试失败了。具体来说,CityPage.all
返回一个空结果,即使我有CityPage
个灯具(之前没有改变过,并且工作完美)。
我做错了什么?为什么我的测试数据没有生成?
答案 0 :(得分:0)
如果STI具有多个子模型,则需要使用以父项命名的一个灯具文件,并使用type
属性区分各个灯具(即STI在引擎盖下执行的操作)。所以在我的情况下,我需要/test/fixtures/destinations.yml
,而不是/test/fixtures/{city,country}_pages.yml
。
简短的谷歌搜索表明这与测试运行后Minitest清除数据库有关 - 请参阅下面的评论。