工厂女孩和协会

发布于 2024-11-30 04:54:31 字数 408 浏览 0 评论 0原文

我有两个类和两个工厂:

class User
 belongs_to :company
end

class Company
 has_many :users
end

Factory.define :user do |u|
 u.name "Max"
 u.association :company
end

Factory.define :user2, :parent => :user do |u|
 u.name "Peter"
end

Factory.define :company do |c|
 c.name "Acme Corporation"
end

如何实现在同一家公司拥有两个用户?运行测试时,FactoryGirl 创建了两条公司记录,但我希望两个用户都连接到一条记录。

有什么提示吗?

I have two classes and two factories:

class User
 belongs_to :company
end

class Company
 has_many :users
end

Factory.define :user do |u|
 u.name "Max"
 u.association :company
end

Factory.define :user2, :parent => :user do |u|
 u.name "Peter"
end

Factory.define :company do |c|
 c.name "Acme Corporation"
end

How can I achieve having both users in the same company? When running the tests, FactoryGirl creates two company records but I want both users to be connected to one record.

Any hints?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

少钕鈤記 2024-12-07 04:54:31
@company = Factory.create :company
@first_user = Factory.create :user, :company => @company
@second_user = Factory.create :user, :company => @company

类似的事情应该可以,但是请先阅读我的评论,我认为您对工厂女孩的想法是错误的。

@company = Factory.create :company
@first_user = Factory.create :user, :company => @company
@second_user = Factory.create :user, :company => @company

Something like that should do, but please, read my comment first, I think you got the wrong idea about Factory Girl.

愛上了 2024-12-07 04:54:31

试试这个:

user1 = Factory(:user)
user2 = Factory(:user2, :company => user1.company) 

Try this:

user1 = Factory(:user)
user2 = Factory(:user2, :company => user1.company) 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文