在Rails中指定空或无夹具

时间:2009-09-23 17:34:10

标签: ruby-on-rails unit-testing fixtures

我有ff。我只使用它生成的ID的ActiveRecord:

class SomeTable < ActiveRecord::Base
end

我认为可以通过以下方式指定灯具:

one:

two:

我在其他灯具中称为:

other_one:
  some_field: some value
  some_table: one

但是当我运行测试时,我得到了:

Fixture::FormatError: Bad data for SomeTable fixture named one (nil)

有人知道如何指定空或无固定装置吗?如果无法做到这一点,可以采用解决方案或替代解决方案。

2 个答案:

答案 0 :(得分:5)

如果要在其他某个fixture文件中将标签用作外键,则不应显式设置id。

# in users.yml
one: {}

two: {}

# now in posts.yml, this works:
one:
  user: one

答案 1 :(得分:1)

解决方法:

one:
  id: 1

two:
  id: 2

...