Rails 5.2.1
В моей модели пользователя у меня есть:
has_one :profile
before_create :build_profile
Это работает, когда пользователь регистрируется на моем сайте, создавая связанный объект профиля.
Использование seed.rd и внутри:
require 'faker'
User.create(email: Faker::Internet.email, password: 'nopassword') do |u|
u.profile.update_attributes({...})
# u.create_profile({...}) ActiveRecord::RecordNotSaved: You cannot call create unless the parent is saved
end
NoMethodError: неопределенный метод update_attributes для nil: NilClass
ActiveRecord не вызывается всемена.рб?Что работает?:
[...]
u.build_profile({...})
[...]
Проблема с этим теперь в том, что у меня дублирующиеся объекты из-за before_create :build_profile
.Удалив эту строку из файла user.rb, все хорошо.Мне не нужно удалять его, и я по-прежнему могу запустить файл seed.rb без проблем.Как этого добиться?