次のコードを含むシードファイルがあります。
300.times do
# create the customer
customer = Customer.create([
{customer_type_id: '1'}
])
# create an address for the customer
address = Address.create([
{city: Faker::Address.city, country: 'UK'}
])
postcode = Postcode.create([
{value: Faker::Address.uk_postcode}
])
name_number = NameNumber.create([
{value: Random.rand(495)}
])
street = Street.create([
{value: Faker::Address.street_name + " " + Faker::Address.street_suffix}
])
state = State.create([
{value: Faker::Address.uk_county}
])
これは正常に機能します。しかし、私は次のことができることを望んでいました。
address = Address.create([
{city: Faker::Address.city, country: 'UK'}
])
address.postcode = Postcode.create([
{value: Faker::Address.uk_postcode}
])
1行目に住所を作成し、2行目に住所の郵便番号を作成しています。ただし、これによりエラーが発生します。
誰かが私がこれを行う方法を提案できますか?
ありがとう!
編集:要求に応じて、生成されるエラーは次のとおりです。
rake db:seed
rake aborted!
undefined method `postcode=' for #<Array:0x007f9df1f26818>
Tasks: TOP => db:seed
(See full trace by running task with --trace)