Signed-off-by: Arthur DANJOU <arthurdanjou@outlook.fr>
This commit is contained in:
2021-07-07 14:11:58 +02:00
parent d5922536af
commit 2f95bcf560
2 changed files with 8 additions and 3 deletions

View File

@@ -13,6 +13,12 @@ export default class SubscribersController {
public async store({request, response}: HttpContextContract) {
const data = await request.validate(SubscriberValidator)
const email = await Subscriber.findBy('email', data.email)
if (email) {
return response.status(201).send({
message: 'Subscriber already exists'
})
}
await Subscriber.create(data)
return response.status(200).send({
message: 'Subscriber successfully registered!'

View File

@@ -1,4 +1,4 @@
import { HttpContextContract } from '@ioc:Adonis/Core/HttpContext'
import {HttpContextContract} from '@ioc:Adonis/Core/HttpContext'
import {rules, schema} from '@ioc:Adonis/Core/Validator'
export default class SubscriberValidator {
@@ -7,8 +7,7 @@ export default class SubscriberValidator {
public schema = schema.create({
email: schema.string({ trim: true }, [
rules.email(),
rules.unique({table: 'subscribers', column: 'email'})
rules.email()
])
})