Prisma Connect удаление связанных полей - PullRequest
0 голосов
/ 04 марта 2020

Я пытаюсь написать мутацию регистрации пользователя, которая принимает тип пользователя и команду, соединяет пользователя с этой командой и создает другой тип, расширяющий пользователя, на основе типа, предоставленного для мутации. То, что происходит, это только мой самый последний пользователь назначается в команду. Этот код возвращает успешный результат только тогда, когда спортсмен зарегистрирован.

регистрация мутации

async function signUpUser(parent, args, { prisma }, info) {
//hash password
let password = await bcrypt.hash(args.password, 10)
//get team to be linked
const team = await prisma.team({ id: args.team })
//create user
const user = await prisma.createUser({
    ...args,
    password,
    team: { connect: { id: team.id }}
})

console.log(user)
//assign user role on team
switch(args.userType) {
    case "ATHLETE":
        athlete = await prisma.createAthlete({
            user: { connect: { id: user.id }},
        })
        return { user, athlete }
    case "COACH":
        coach = await prisma.createCoach({
            user: { connect: { id: user.id }},
        })
        return { user, coach }
    case "HEAD_COACH":
        headCoach = await prisma.createHeadCoach({
            user: { connect: { id: user.id }},
        })
        return { user, headCoach }
    case "PARENT":
        parent = await prisma.createParent({
            user: { connect: { id: user.id }},
        })
        return { user, parent }
    default:
        return "error occured"
}

}

...