42得票10回答
在Rails中使用factory_girl处理具有唯一约束的关联对象时,会出现重复错误问题。

我正在处理一个Rails 2.2项目,需要进行更新。我正在使用factory_girl替换现有的fixtures,并遇到了一些问题。问题出在代表查找数据表的模型上。当我创建一个Cart并添加两个具有相同产品类型的产品时,每个创建的产品都会重新创建相同的产品类型。这导致ProductType模型...

42得票3回答
FactoryGirl使用build_stubbed策略和has_many关联。

给定两个对象之间的标准 has_many 关系。为了举一个简单的例子,让我们来看一个:class Order < ActiveRecord::Base has_many :line_items end class LineItem < ActiveRecord::Base ...

42得票6回答
如何独立测试模型的回调方法?(涉及IT技术)

我在一个模型中有一个方法:class Article < ActiveRecord::Base def do_something end end 我为这个方法编写了一个单元测试:# spec/models/article_spec.rb describe "#do_somethi...

42得票5回答
使用 factory_girl 填充关联的子项

我有一个模型 Foo,它 has_many 'Bar'。我为每个对象都有一个 factory_girl 工厂。Bar 的工厂与 Foo 建立了关联;当创建 Bar 时,它将实例化一个 Foo。 我想要一个 Factory,它可以创建包含 Bar 的 Foo。最理想的情况是这个 Bar 是通过...

40得票4回答
Rails 3.2,RSpec,Factory Girl: NameError:未初始化的常量工厂

我一直在跟随这个介绍Rails测试的教程做学习,但遇到了一个问题,似乎找不到解决方案。我对Rails非常熟悉,但这是我第一次尝试进行测试。 无论如何,我有一个非常基本的模型测试,甚至还没有完全实现,当我尝试运行rspec spec/models/admin_spec.rb时,我会在Admin...

40得票3回答
机械师 vs FactoryGirl - 优缺点

我正在使用factory_girl,但是在看machinist gem。请问你能告诉我迁移到machinist的优缺点吗?你有比较这两个库吗?

40得票6回答
升级到Devise 3.1 => 获取的重置密码令牌无效

解决方案 感谢Steven Harman提供的代码片段,我已经使其正常工作。 devise_mail_helpers.rb module Features module MailHelpers def last_email ActionMailer::Base.d...

39得票4回答
Rails:如何避免Factory Girl中的重复错误?我做错了吗?

假设我有一个名为user的模型,它在email字段上具有唯一性限制。 如果我第一次调用Factory(:user)时一切正常,但如果我第二次调用它,它将会失败并显示"entry already exists"错误。 我目前使用一个简单的助手函数在创建工厂之前搜索数据库中是否存在重复数据,并...

38得票3回答
如何指定与factory_bot的关联?

例如,我有两个模型,一个是用户(user),另一个是帖子(post)。一篇帖子(post)属于一个用户(user),而一个用户(user)可以拥有多篇帖子(posts)。 例如,我有两个模型,一个用户(user)和一个帖子(post)。一篇帖子(post)belongs_to一个用户(use...

38得票2回答
FactoryGirl + Faker - 在数据库种子数据中为每个对象生成相同的数据

我正在使用FactoryGirl和Faker在我的seeds.rb文件中生成用户对象,但由于电子邮件唯一性验证,同一个用户被创建了多次,导致rake db:seed失败。 用户的工厂代码:#users.rb require 'faker' FactoryGirl.define do f...