0
나는 다음과 같은 설정이 있습니다Rails3 FactoryGirl의 has_one 알 수없는 속성 오류
모델 :
class Product < ActiveRecord::Base
has_one :product_category
attr_accessible :name, :product_category, :product_category_id
end
class ProductCategory < ActiveRecord::Base
belongs_to :product
attr_accessible :name
end
마이그레이션 :
class CreateProducts < ActiveRecord::Migration
def change
create_table :products do |t|
t.references :product_category
t.string :name
t.timestamps
end
end
end
class CreateProductCategories < ActiveRecord::Migration
def change
create_table :product_categories do |t|
t.string :name
t.timestamps
end
end
end
지금, 나는 FactoryGirl 및 RSpec에를 사용하는 것을 테스트 할 수 있습니다.
product_spec.rb
require 'factory_girl'
FactoryGirl.define do
factory :product, class: Product do
product_category {|a| a.association(:product_category)}
name "Demo Product"
end
end
product_category_spec.rb
require 'factory_girl'
FactoryGirl.define do
factory :product_category, class: ProductCategory do
name "Demo Product"
end
end
하지만 product_spec.rb에 RSpec을 실행할 때, 나는 다음과 같은 오류가 발생합니다 : 그래서 나는 다음과 같은 FactoryGirl 테스트 모델을 설정 :
can't write unknown attribute 'product_id'
왜 이런 일이 발생하는지 알 수 없습니다. 제품 팩토리에서 product_category를 제거하면 모든 것이 작동합니다.
어, 남자, 나는 그런 단순한 오류를 범하면서 바보라고 느낍니다. 그래도 빠른 답장을 보내 주셔서 감사합니다! – Bryce