Prismaは主にTypeScript、Node.jsのエコシステム向けに設計されているORMツールです。
Prismaを使用することでデータベーススキーマの定義、型安全なクエリの生成、マイグレーション管理が簡単になります。
さらに、TypeScriptの型推論機能と統合されているため、開発中のエラーを未然に防ぎ、コードを書く時間を短縮できます。
しかし、下記のエラーメッセージで詰まってしまいました。
Unsafe return of an `any` typed value.eslint@typescript-eslint/no-unsafe-return
新しく追加したmodelからの戻り値がany型として扱われているため、このエラーが発生しています。
開発環境
開発で仕様しているバージョンは以下のとおりです。
- eslint : 8.57.0
- prisma : 5.14.0
- typescript : 5.4.2
新しいモデルの作成手順
Prismaに新しいモデルを追加する手順は以下のとおりです。
- prisma.schemaにmodelを定義
- consoleでprisma generateを行う
- tsファイルで使用する。
作成したmodelは以下のものです。
model Add {
id String @id @default(auto()) @map("_id") @db.ObjectId
type String
money Int
description String?
date DateTime @default(now())
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
createdBy User @relation(fields: [createdById], references: [id])
createdById String @db.ObjectId
}
VSCodeの再起動でエラー解決
モデルの作成とprisma generateによるPrisma Clientの更新は成功しましたが、冒頭でも書いた下記のエラーが消えません。
Unsafe return of an `any` typed value.eslint@typescript-eslint/no-unsafe-return
型を定義しても、エラーが消えなかったためVSCodeの再起動をしたところエラーが解決しました。
エラーの解決方法まとめ
型に関するエラーが消えない場合には
VSCodeの再起動
が簡単かつ有効です。
Prismaに限らず依存関係のエラーなどもVSCodeの再起動で治るパターンが多々あるので、まずは再起動を試してください。