0

我有这种方法,在 rake 任务后应该将我的数据保存到模型中,我试图一次更新 2 列,这应该不是问题

  def update_fixtures #rake task method
   Fixture.destroy_all
   get_home_fixtures.each {|home| Fixture.create!(home_team: home )}
   get_away_fixtures.each {|away| Fixture.create!(away_team: away )}
  end

在这种情况下,只有客队会保存,但是如果我这样做

  def update_fixtures #rake task method
     Fixture.destroy_all
     get_away_fixtures.each {|away| Fixture.create!(away_team: away )}
     get_home_fixtures.each {|home| Fixture.create!(home_team: home )}
  end

然后只有主队会救。

我已经尝试过@model.errors.full_messages,但是得到了 nil 类的未定义方法,所以没有?

我正在尝试调试此问题,但不确定我可以使用什么来查找问题

有谁之前经历过这个吗?快把我逼疯了

编辑

我可以从控制台手动更新该字段,所以当我这样做时

Fixture.create(:away_team => "String")

它更新得很好

谢谢

4

1 回答 1

1

当您使用#create!时,如果保存失败,它应该会抛出错误,这应该意味着您没有尝试保存任何内容(空数组)。

验证

get_away_fixtures
get_home_fixtures

看起来像你期望的那样。安装debugger后添加Fixture.destroy_all

于 2013-03-13T14:35:40.660 回答