티스토리 뷰
안녕하세요 강정호입니다
오늘은 upload Resolver 개발하는 것에 대해서 포스팅 해보겠습니다.
upload.graphql
type Mutation {
upload(caption: String! files: [String!]): Post!
}
Post를 create할 때 필수적인 값이 id, caption. id는 자동으로 생성이 되기 때문에 caption만 input 값으로 설정.
그리고 Post 생성시에 같이 생성할 File 객체를 위해서 String 타입의 files 배열을 input 값으로 설정.
Post 생성 후에는 Post를 리턴.
upload.js
import { prisma } from "../../../../generated/prisma-client";
export default {
Mutation: {
upload: async (_, args, { request, isAuthenticated }) =>{
// 사용자 인증
isAuthenticated(request);
const { user } = request;
const { caption, files } = args;
const post = await prisma.createPost({
caption,
user: {
connect: {
id: user.id
}
}
});
files.forEach(
async file => {
await prisma.createFile({
url: file,
post: {
connect: {
id: post.id
}
}
})
});
return post;
}
}
}
오늘의 핵심
connect : 참조 관계에 있는 테이블일 경우에 외래키를 설정해주기 위한 옵션
테스트
결과 조회
'프로젝트' 카테고리의 다른 글
[인스타그램 클론코딩] #3.26 seeRoom Resolver (0) | 2020.09.23 |
---|---|
[인스타그램 클론코딩] #3.21 editPost deletePost Resolver (0) | 2020.09.18 |
[인스타그램 클론코딩] #3.16 ~ 3.18 isSelf, isFollowing, isLiked with Computed.js (0) | 2020.09.12 |
[인스타그램 클론코딩] #3.13 ~ 3.14 me Resolver + Prisma 한계점, seeFullPost Resolver (0) | 2020.09.09 |
[인스타그램 클론코딩] #3.12 editUser seeUser Resolver (0) | 2020.09.08 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 개발자 회고
- 파라메터
- 항해플러스후기
- github
- 2023년
- 유즈케이스
- pop_back
- 재테크공부
- ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````
- push_back
- 관계대수
- 월부닷컴
- 월급쟁이부자들
- 도커
- Inception
- front
- 열반스쿨기초반
- resize
- Use case
- 인셉션
- 내년은 빡세게!!
- Spring boot
- docker
- 부동산공부
- 폭포수
- 항해솔직후기
- 깃
- 항해플러스백엔드
- GIT
- 깃허브
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함