Ruby on rails 3 不清楚何时使用特定FactoryGirl语法
在FactoryGirl的最新版本中,一些语法方法(如Ruby on rails 3 不清楚何时使用特定FactoryGirl语法,ruby-on-rails-3,factory-bot,Ruby On Rails 3,Factory Bot,在FactoryGirl的最新版本中,一些语法方法(如Factory.create)被贬低,取而代之的是其他几种语法方法,最显著的是FactoryGirl.create和更简单的create 然而,经验表明,考虑到上下文,某些语法并不总是合适的 例如: FactoryGirl.define do factory :article do after_create {|a| a.comments << create(:comment) } end factory
Factory.create
)被贬低,取而代之的是其他几种语法方法,最显著的是FactoryGirl.create
和更简单的create
然而,经验表明,考虑到上下文,某些语法并不总是合适的
例如:
FactoryGirl.define do
factory :article do
after_create {|a| a.comments << create(:comment) }
end
factory :comment do
end
end
FactoryGirl.define do
工厂:文章做什么
在按照创建{| a | a.comments之后,如果您想在调用create和build等方法时省略FactoryGirl模块前缀,则需要在rspec/测试单元模块中混合FactoryGirl方法,如下所示:
# rspec
RSpec.configure do |config|
config.include FactoryGirl::Syntax::Methods
end
我了解到,从当前版本(3.2.0)起,回调(如创建后)中不支持缩写符号。此信息直接来自FactoryGirl团队,通过谷歌群组。如果在未来版本中添加此问题,我将更新此问题。感谢Salil的回复。是的,我已经这样做了,这允许我仅在上述情况下使用create
。你是一个该死的救命老兄。我只是打算用l语法错误。比起几个小时的无厘头的调试,我更喜欢额外的按键。我一年前问过这个问题,从那以后一直在使用长格式。是的,我同意,少了一些挠头。