Ruby on rails Hartl教程第9.3.3章分页(FactoryGirl::AttributeDefinitionError)
我当时正在编写第9.3.3部分关于Michael Hartl的ruby on rails教程中的分页,一个Im卡住了:运行rspec测试时,我收到一条错误消息,gem FactoryGirl出现了一些问题。你认为会有什么问题吗Ruby on rails Hartl教程第9.3.3章分页(FactoryGirl::AttributeDefinitionError),ruby-on-rails,ruby,rspec,pagination,railstutorial.org,Ruby On Rails,Ruby,Rspec,Pagination,Railstutorial.org,我当时正在编写第9.3.3部分关于Michael Hartl的ruby on rails教程中的分页,一个Im卡住了:运行rspec测试时,我收到一条错误消息,gem FactoryGirl出现了一些问题。你认为会有什么问题吗 /Users/smi/.rvm/gems/ruby-2.0.0-p594/gems/factory_girl-4.5.0/lib/factory_girl/definition_proxy.rb:43:in `add_attribute': Both value and
/Users/smi/.rvm/gems/ruby-2.0.0-p594/gems/factory_girl-4.5.0/lib/factory_girl/definition_proxy.rb:43:in `add_attribute': Both value and block given (FactoryGirl::AttributeDefinitionError)
from /Users/smi/.rvm/gems/ruby-2.0.0-p594/gems/factory_girl-4.5.0/lib/factory_girl/definition_proxy.rb:102:in `method_missing'
from /Users/smi/projects/sample_app/spec/factories.rb:3:in `block (2 levels) in <top (required)>'
from /Users/smi/.rvm/gems/ruby-2.0.0-p594/gems/factory_girl-4.5.0/lib/factory_girl/syntax/default.rb:18:in `instance_eval'
from /Users/smi/.rvm/gems/ruby-2.0.0-p594/gems/factory_girl-4.5.0/lib/factory_girl/syntax/default.rb:18:in `factory'
from /Users/smi/projects/sample_app/spec/factories.rb:2:in `block in <top (required)>'
from /Users/smi/.rvm/gems/ruby-2.0.0-p594/gems/factory_girl-4.5.0/lib/factory_girl/syntax/default.rb:49:in `instance_eval'
from /Users/smi/.rvm/gems/ruby-2.0.0-p594/gems/factory_girl-4.5.0/lib/factory_girl/syntax/default.rb:49:in `run'
from /Users/smi/.rvm/gems/ruby-2.0.0-p594/gems/factory_girl-4.5.0/lib/factory_girl/syntax/default.rb:7:in `define'
from /Users/smi/projects/sample_app/spec/factories.rb:1:in `<top (required)>'
from /Users/smi/.rvm/ge......................
factories.rb:
FactoryGirl.define do
factory :user do
sequense(:name) { |n| "Person #{n}" }
sequense(:email) { |n| "person_#{n}@example.com" }
password "foobar"
password_confirmation "foobar"
end
end
我找到了答案!factories.rb中的方法“sequence”写错了。现在所有的测试都是绿色的。犯了同样的错误,输入了单词
trait
。错误消息是非常没有帮助的。
FactoryGirl.define do
factory :user do
sequense(:name) { |n| "Person #{n}" }
sequense(:email) { |n| "person_#{n}@example.com" }
password "foobar"
password_confirmation "foobar"
end
end