Prisma
22.01.05 [prisma] Date.now()와 new Date()
슈팅스타제제
2022. 1. 5. 21:52
schema.prisma에서 time에 대한 타입을 다음과 같이 정의하였다.
model Schema {
id Int
time DateTime
}
처음에는 prisma.table.create에서 현재 시간을 time에 저장할 때,
Date.now()로 작성했는데 아래와 같은 에러가 발생하였다.
"\nInvalid `prisma.oneDay.create()` invocation:\n\n{\n data: {\n coinId: 4,\n symbol: 'coinData.symbol',\n quote: 34,\n time: '1641370249008'\n ~~~~~~~~~~~~~~~\n }\n}\n\nArgument time: Got invalid value '1641370249008' on prisma.createOneOneDay. Provided String, expected DateTime.\n\n"
그래서 찾다가 new Date()로 바꿨는데 정상 작동했다.
이유는 Date.now()는 1970년 1월 1일 0시부터 밀리초로 환산한 시간 즉 숫자로 나오기 때문에 데이터 타입이 number이고,
new Date()는 현재 날짜와 시간을 오브젝트로 나타낸 것이며 DateTime과 맞는 타입이었던 것이다.
참고문서링크:
https://velog.io/@taelee/Date-new-Date-new-Date-Date.now-%EC%B0%A8%EC%9D%B4-JavaScript
Date(), new Date(), +new Date(), Date.now(), 차이 - JavaScript
new Date() : 날짜 시간 오브젝트Date(): 위 오브젝트를 문자열로 바꿈\+new Date(), Date.now(): 둘은 같은데 1970년 1월 1일 0시부터 지난 시간을 밀리초로 환산
velog.io