bulk_update에서 updated_at 필드
안녕하세요! 해당 수업에서 django shell에서 update 부분 실습하다가 결과 값에 의문이 생겨 질문드립니다.

이 부분에서 auto_now=True 필드도 같이 bulk_update 함수의 인자인 fields에 지정해야만 해당 필드도 같이 업데이트 된다고 하셨는데 제 코드에서는 updated_at 필드의 값이 업데이트 되지 않았습니다.

제가 나름대로 이해한 바로는 bulk_update는 따로 save를 호출하지 않기 때문에 updated_at을 fields 인자에 추가해주더라도 변한 값이 없어서 업데이트가 되지 않는 걸까요?
그렇다면 제대로 updated_at도 업데이트 되게끔 하기 위해서는 따로 post.updated_at = timezone.now()를 title 수정할 때 해주어야 하는 걸까요?
Answer 1
0
안녕하세요.
김은혜 님께서 말씀하신 내용이 맞습니다.
제 설명에서도 bulk_update 전에 .update_at 필드 값 지정이 없었고, bulk_update 호출 시에는 모델의 save 호출이 없기 때문에, 기존 updated_at 필드값으로 UPDATE 쿼리가 수행된 상황입니다.
1) post.title 값 지정할 때 post.updated_at 필드 값도 timezone.now() 값을 지정하실 수도 있겠지만, 이는 매 포스팅마다 다른 시각을 지정하는 것인데요.
2) .updated_at 값은 동일한 값으로 지정해도 된다면, updated_at 필드는 뺀 bulk_update 후에 아래와 같이 updated_at 필드 값을 일괄 변경해주시면 하나의 쿼리로 업데이트가 이뤄집니다.
post_qs.update(updated_at=timezone.now())
저는 두번째 방법을 추천드립니다.
좋은 질문 주셔서 감사드립니다. 🙇
화이팅입니다. :-)
Django의 View나 URL의 네이밍 컨벤션
0
61
1
08-14 FormView 관련 질문
0
72
1
07-01 IPv4AddressIntegerField 질문
0
82
1
14-08 수업 확인 요청 드립니다.
0
91
2
nextjs git 관리?
0
75
1
14-07에서 SESSION_COOKIE_DOMAIN = None 처리 필요.
0
75
2
고민
0
220
3
django-component==0.139 실행 시 오류
0
167
2
django-csp 4.0 migration 관련
0
122
2
01 윈도우 개발환경 설치 문의
0
99
1
강의 자료 문의
0
130
2
선생님 학습 방법 질문이 있습니다.
0
154
2
정규표현식
0
107
2
선생님 질문 있습니다.
0
80
1
공유자님 이 강의 공부 방법에 대한 질문입니다.
0
181
2
mydjango.py 질문 있습니다.
0
147
3
Django-Components의 0.128 세팅
0
226
3
질문 아님.
0
127
1
mydjango.py 실습 질문있습니다.
0
88
2
pycharm 개발환경 설정 오류
0
182
2
강의 듣다가 유료pycharm에 비해 vscode지원기능이 아쉬워서 확장프로그램 만들었는데 여기 공유해도 될까요?
0
167
1
중단점에 대한 질문 있습니다.
0
133
2
todo / react 붙이는 깃주소를 받고 싶습니다.
0
179
6
NoReverseMatch at /hottrack/archives/2023/
0
98
2

