Open2
supabaseのメモ
prismaとsupabase
prismaでauthとpublicの複数スキーマを扱う
経緯
下記のエラーが発生した。
Error: P4002
The schema of the introspected database was inconsistent: The schema of the introspected database was inconsistent: Cross schema references are only allowed when the target schema is listed in the schemas property of your datasource. `public.users` points to `auth.users` in constraint `users_id_fkey`. Please add `auth` to your `schemas` property and run this command again.
要約するとpublicというスキーマは参照できるけど、authというスキーマが参照できないから追加してくれと。
対策
schema.prisma
generator client {
provider = "prisma-client-js"
// add
previewFeatures = ["multiSchema"]
}
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
// add
schemas = ["auth", "public"]
}
Supabase Email rate limit exceeded の対策
原因
一定時間内にメールを送信できる回数が限られている。
背景
supabaseのシステムメールがスパム利用されることが増えたために、rate limitを下げる方針になったそう。
対策
supabaseの管理画面
Settings → Auth → SMTP Settings の Custom SMTPを有効にしてSendGridなどを利用する。