Ton*_*ony 18 ruby ruby-on-rails fixtures
如本文所述,我在fixture中使用自动关联.例如,如果某个区域对象具有国家/地区ID,而不是执行"country_id":1,则执行"country":"USA"."USA"是我的countries.yml文件中的标签,因此灯具知道如何处理这个问题.但是,这仅在您没有为countries对象指定ID值时才有效.所以我不能将美国的ID指定为1.但如果我不将它指定为1,它最终会成为一些大值8974343 ...这有点奇怪.有没有办法让灯具自动生成不是超高的id?....或者这样可以吗?
小智 24
这是您获得夹具标签的自动生成ID的方法.
Fixtures.identify(:reginald)
Don*_*rve 22
阅读API文档,这正是自动生成的灯具应该如何表现 - 如果您想提前获得灯具的特定ID值,您可能应该自己分配它.
如果没有,那么,从API文档:
The generated ID for a given label is constant, so we can discover any fixture‘s ID without loading anything, as long as we know the label.
Edo*_*Edo 16
由于我没有足够的声誉来评论,这是实际的Rails 4.1文档:
在Fixture标签插值下:
monkey_id: <%= ActiveRecord::FixtureSet.identify(:reginald) %>
pirate_id: <%= ActiveRecord::FixtureSet.identify(:george) %>
| 归档时间: | 
 | 
| 查看次数: | 11571 次 | 
| 最近记录: |