FactoryGirl RSpec中,如何设置对象属性为长尾?

2026-04-11 17:481阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计330个文字,预计阅读时间需要2分钟。

FactoryGirl RSpec中,如何设置对象属性为长尾?

在编写FactoryBot定义时,如果为实例属性设置时出现错误,并且错误提示为在实例中为`name`设置属性时出现此错误...,通常是因为属性名使用了非法字符或格式。

以下是对原代码的简化修改,避免使用非法字符,并确保代码长度不超过100个字:

rubyFactoryBot.define do factory :business do factory :business_main do name Business Name end endend

无论何时我创建一个Factory对象,我都会在工厂为该对象设置属性时出现此错误 – 在本例中为’name’.为什么???

businesses.rb

FactoryGirl RSpec中,如何设置对象属性为长尾?

FactoryGirl.define do factory :business do factory :business_main do name "Dave's Toys" end end end

企业表

Column | Type | Modifiers ----------------------+-----------------------------+--------------------------------------------------------- id | integer | not null default nextval('businesses_id_seq'::regclass) name | character varying(255) | address_line1 | character varying(255) | address_line2 | character varying(255) | city | character varying(255) | state | character varying(255) | zip | character varying(255) |

business_spec.rb

... business = Factory(:business_main) ... # Failure/Error: business = Factory(:business_main) # NoMethodError: undefined method `name=' for #<Business:0x007fc991684590>

Using rails (3.1.3) Using factory_girl (2.3.2) Using factory_girl_rails (1.4.0) Using rspec-core (2.7.1) Using rspec-expectations (2.7.0) Using rspec-mocks (2.7.0) Using rspec (2.7.0) Using rspec-rails (2.7.0) 运行rake db:test:clone,然后所有测试数据库列将正确映射到Active Record方法.

本文共计330个文字,预计阅读时间需要2分钟。

FactoryGirl RSpec中,如何设置对象属性为长尾?

在编写FactoryBot定义时,如果为实例属性设置时出现错误,并且错误提示为在实例中为`name`设置属性时出现此错误...,通常是因为属性名使用了非法字符或格式。

以下是对原代码的简化修改,避免使用非法字符,并确保代码长度不超过100个字:

rubyFactoryBot.define do factory :business do factory :business_main do name Business Name end endend

无论何时我创建一个Factory对象,我都会在工厂为该对象设置属性时出现此错误 – 在本例中为’name’.为什么???

businesses.rb

FactoryGirl RSpec中,如何设置对象属性为长尾?

FactoryGirl.define do factory :business do factory :business_main do name "Dave's Toys" end end end

企业表

Column | Type | Modifiers ----------------------+-----------------------------+--------------------------------------------------------- id | integer | not null default nextval('businesses_id_seq'::regclass) name | character varying(255) | address_line1 | character varying(255) | address_line2 | character varying(255) | city | character varying(255) | state | character varying(255) | zip | character varying(255) |

business_spec.rb

... business = Factory(:business_main) ... # Failure/Error: business = Factory(:business_main) # NoMethodError: undefined method `name=' for #<Business:0x007fc991684590>

Using rails (3.1.3) Using factory_girl (2.3.2) Using factory_girl_rails (1.4.0) Using rspec-core (2.7.1) Using rspec-expectations (2.7.0) Using rspec-mocks (2.7.0) Using rspec (2.7.0) Using rspec-rails (2.7.0) 运行rake db:test:clone,然后所有测试数据库列将正确映射到Active Record方法.