У меня есть две модели Comment
и Project
.Комментарий должен быть связан с проектом.Для этого у меня в комментариях есть комментарий, который указывает на проект.
# projects.yml
test_project:
name: 'Test'
description: 'This is a test'
owner: test_user
# comments.yml
test_comment:
author: test_user
project: test_project
Однако comments(:test_comment)
указывает на неверный идентификатор.Таким образом, комментарий недействителен и не будет сохранен.
> projects(:test_project).id
=> "0ed4a67e-435f-5b1f-b8cb-317e933473ad"
> comments(:test_comment).project_id
=> 871498793
> Project.find_by(id: 871498793)
=> nil
> comments(:test_comment).valid?
=> false
Но я могу создать ассоциацию вручную:
> comments(:test_comment).project = projects(:test_project)
> comments(:test_comment).valid?
#=> => true
Что может быть причиной этого?Откуда исходит неправильный идентификатор?Я пробежал rails db:reset RAILS_ENV=test
, но это ничего не изменило.