인프런 커뮤니티 질문&답변

LYM님의 프로필 이미지
LYM

작성한 질문수

파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트

장고 기본 CBV API (Generic date views)

강의 9분, post.created_at.replace 부분 관련입니다.

작성

·

261

0

강의 9분대, 장고 쉘에서 post.created_at 값의

랜덤값 입력 하는 부분에서

month의 랜덤값 range를 1~13으로 했을때 Value Error가 발생합니다. range 값을 다시 3~13으로 조정했을때는

Value Error가 발생하지 않네요. 강의 흐름상

중요한 부분은 아닌것 같지만 의아해서 한번 질문

올려봅니다.

 

from instagram.models import Post

 

post_list = Post.objects.all()

 

import random

 

for post in post_list:

year = random.choice(range(1990,2020))

month = random.choice(range(1,13))

post.created_at = post.created_at.replace(year=year, month=month)

post.save()

# => ValueError: day is out of range for month

 

for post in post_list:

year = random.choice(range(1990,2020))

month = random.choice(range(3,13))

post.created_at = post.created_at.replace(year=year, month=month)

post.save()

# => ValueError 발생 X

답변 2

1

LYM님의 프로필 이미지
LYM
질문자

아 제가 포스팅 생성한 날짜를 혼동했었네요. 빠른 답변 감사합니다!

1

이진석님의 프로필 이미지
이진석
지식공유자

안녕하세요.

보여주신 "ValueError: day is out of range for month" 에러는 현재의 month에서 지원되는 day 범위를 벗어나서 발생한 오류입니다.

코드에서는 year/month 변경만 하고 day 변경은 없었는데요. 아마도 2월로 지정했을 때, day가 29,30,31처럼 2월에 없는 날이었을 것입니다.

화이팅입니다. :-)

LYM님의 프로필 이미지
LYM

작성한 질문수

질문하기