Reputation: 163
I want to find the user with a specific email regardless case sensitivity of the email in the DB or in the request body. Using any of the following methods is rendering an undefined function error
const user = await prisma.User.findUnique({
where: {
email: {
insensitive: {
equals: req.body.email,
},
}
}
})
const user = await prisma.User.findUnique({
where: {
email: {
insensitiveEquals: req.body.email
}
}
})
const user = await prisma.User.findUnique({
where: {
email: req.body.email,
mode: 'insensitive'
}
})
Upvotes: 3
Views: 3059
Reputation: 7618
Undefined function error would mean that there is no function findUnique
available on the user
model.
This would happen if PrismaClient
is not up to date with the schema file.
You would need to execute npx prisma generate
to generate the latest PrismaClient
.
After generating PrismaClient following query can be used to find user with email in case insensitive
mode.
const user = await prisma.user.findMany({
where: {
email: {
equals: '[email protected]',
mode: 'insensitive',
},
},
});
This reference of case insensitive filtering will be helpful as well.
Upvotes: 4