Я пытаюсь настроить Doorkeeper, чтобы у моего стола Company
были токены доступа и предоставления.Я следовал этому руководству , за исключением того, что я использовал компании, а не пользователей в качестве владельцев ресурсов.
Это ошибка, которую я получаю после того, как я принял приглашение предварительной авторизации иотправить на /oauth/authorize
:
ERROR: insert or update on table "oauth_access_grants" violates foreign key constraint "fk_rails_330c32d8d9"
DETAIL: Key (resource_owner_id)=(2) is not present in table "companies".
Моя схема:
add_foreign_key "oauth_access_grants", "companies", column: "resource_owner_id"
add_foreign_key "oauth_access_tokens", "companies", column: "resource_owner_id"
И связь в моей модели компании:
has_many :access_grants, class_name: 'Doorkeeper::AccessGrant', foreign_key: :resource_owner_id, dependent: :destroy
has_many :access_tokens, class_name: 'Doorkeeper::AccessToken', foreign_key: :resource_owner_id, dependent: :destroy
Я также сделалОбязательно уничтожьте базу данных (db:reset
) и повторите миграцию (db:migrate:reset
).Я довольно смущен в этом пункте.Есть мысли о том, чего мне не хватает?
Если это поможет, я использую Rails 5.2.3, Doorkeeper 5.1.0 и PostgreSQL 9.6.5.