🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

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

22.05.02 13:21 작성 조회수 208

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

질문자

2022.05.02

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

1

안녕하세요.

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

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

화이팅입니다. :-)

채널톡 아이콘