我遇到了以下情况:我的夹具中有很多像寄存器,我试过编号:
# nutrients.yml
nutrient_1:
name: Protein
nutrient_2:
name: Fat
# daily_intakes.yml
daily_intake_1:
nutrient: nutrient_1
sex: m
amount: 200g
daily_intake_2:
nutrient: nutrient_1
sex: f
amount: 100g
当我尝试运行rake test:units时,我遇到以下错误:
> 1) Error: ArticleTest#test_relationships:
> ActiveRecord::StatementInvalid: Mysql2::Error: Unknown column
> 'nutrient' in 'field list': INSERT INTO `daily_intakes` (`nutrient`,
> `amount`, `sex`, `id`) VALUES ('nutrient_1', '200', 'm', 787678763)
我无法理解为什么Rails不引用营养素1而不是将其用作字符串。
所以,我试过了:
# nutrients.yml
a:
name: Protein
b:
name: Fat
# daily_intakes.yml
daily_intake_1:
nutrient: a
sex: m
amount: 200g
daily_intake_2:
nutrient: a
sex: f
amount: 100g
它有效!但我想保留数字......任何想法?
答案 0 :(得分:0)
奇怪,有趣,因为我没有看到这个问题。为什么不这样命名:
nutrient_one
nutrient_two
或没有下划线
nutrient1
nutrient2