Добавление и использование новых моделей баз данных с NextAuth
Я использую NextAuth для создания веб-службы и подключения ее к базе данных MongoDB. Теперь я могу войти в систему с помощью Google Auth, и записи правильно сохраняются в моей базе данных. Теперь мне нужно добавить новые модели в мою базу данных и добавить к ним через маршруты API.
Я выполнил эти инструкции, чтобы добавить собственную модель
Test
.
Test.js
export default class Test {
constructor(name) {
if (name) {
this.name = name;
}
}
}
export const TestSchema = {
name: 'Test',
target: Test,
columns: {
id: {
// This property has `objectId: true` instead of `type: int` in MongoDB
primary: true,
type: 'int',
generated: true,
},
name: {
type: 'varchar',
nullable: true,
},
createdAt: {
type: 'timestamp',
createDate: true,
},
updatedAt: {
type: 'timestamp',
updateDate: true,
},
},
};
index.js
import Test, { TestSchema } from './Test';
export default {
Test: {
model: Test,
schema: TestSchema,
},
};
Я обновил [... nextauth.js], чтобы добавить
Test
к моему адаптеру
adapter: Adapters.TypeORM.Adapter(
process.env.DATABASE_URL,
{
models: {
Test: Models.Test,
},
}
)
На данный момент я не вижу ошибок, но не уверен, что они добавлены правильно. Итак, я хочу попробовать создать тест
Test
документ. Однако я не могу найти никакой документации о том, как это сделать. Мне нужен доступ к соединению с базой данных, но я пробовал регистрировать все, что импортировано из 'next-auth / adapters', 'next-auth / client', 'next-auth', req и т. Д. И нигде не могу найти что это соединение сохраняется. Я думаю, мне нужно позвонить в
getAdapter()
функция хранится в классе адаптера TypeORM, но я не могу получить к ней доступ. Я также попытался получить доступ к любому из встроенных методов, например
setUser
и не могу их получить. Поэтому я не могу найти способ вручную изменить записи базы данных.