Ruby on rails 导轨,can';t从具有HABTM关系的夹具加载数据

Ruby on rails 导轨,can';t从具有HABTM关系的夹具加载数据,ruby-on-rails,ruby-on-rails-3,has-and-belongs-to-many,fixtures,functional-testing,Ruby On Rails,Ruby On Rails 3,Has And Belongs To Many,Fixtures,Functional Testing,我是rails和测试新手,在加载固定装置时遇到问题 付款。yml 付款: 名称:某物 金额:1.5 事件:一些事件 用户:一些用户 说明:长文本 用户:一些用户,一些用户2 users.yml 一些用户: 电邮:test@test.com 尼克:姓名 一些用户2: 电邮:test@test.com 尼克:姓名 好的,所以问题是当我在做创建支付的功能测试时 测试“应创建付款”是否执行 断言差额('Payment.count')do post:create,:payment=>@payment

我是rails和测试新手,在加载固定装置时遇到问题

付款。yml
付款:
名称:某物
金额:1.5
事件:一些事件
用户:一些用户
说明:长文本
用户:一些用户,一些用户2


users.yml
一些用户:
电邮:test@test.com 尼克:姓名

一些用户2:
电邮:test@test.com
尼克:姓名

好的,所以问题是当我在做创建支付的功能测试时

测试“应创建付款”是否执行
断言差额('Payment.count')do
post:create,:payment=>@payment.attributes
结束

它只是发送

<付款id:nil,名称:“某物”,金额:1.5,事件id:972288058,用户id:63246679,创建地点:“2010-11-05 19:56:53”,更新地点:“2010-11-05 19:56:53”,描述:“长文本”>

而不是包含多个用户的用户数组。我使用“用户”来定义谁拥有付款,用户(在一个单独的联接表中)作为共享付款的用户列表

知道我做错了什么吗

这是付款模式

类付款 有很多:注释,:as=>:commentable,:dependent=>:destroy
属于:事件
属于:用户
拥有和属于多个:用户
结束


你能把模型放在付款处吗?我有一些相似的东西,问题是模型不同。例如,如果它是一个ActiveRecord类,您必须检查它是如何工作的及其关系。例如,如果事件实际上是属于某个“事件”类的“事件”id,则应放置类似的内容:

payment.yml
payment:
  name: something
  amount: 1.5
  event_id: 1
  user_id: 1
  ...
user.yml
   id: 1
   name: David Smith
   status: Branch Manager
  ...
event.yml
  id: 1
  name: overdraft charge

但是我有一个用户是“属于”的,还有一个用户是“拥有”和“属于”?Ruby会这样做,但是你仍然需要在fixture yml文件中处理它。在我的示例中,假设我与付款和用户之间存在一对一的关系。此外,我有一对一的付款和活动。例如,在我的支付模型中,我会有这样的东西:归属于:用户,:外键=>“用户id”。同样,这是在模型部分。检查此链接:并查找“关联的标签引用(属于、有一个、有多个)”