Django ModelForm 특정 필드만 업데이트하기

Modelform을 써서 View 를 구현해서 하다보면,

Modelform 에서 선언된 모든 field 값이 한꺼번에 업데이트 되는 것이 일반적이다.

이것도 하다 보면, 특정 필드만 업데이트 하고자 하는 경우가 있는데

save() 함수를 호출할 때 update_fields 값을 넘겨주면, 해당 필드만 갱신할 수 있다.

for changed_field in item.changed_data:
  if changed_field == "date_due" or changed_field == "desc":
    orderitem.save(update_fields=[changed_field])

변경된 필드중, “date_due”, “desc” 필드인 경우만 save 하는 샘플 코드를 남겨둔다.

참고 페이지

https://velog.io/@ggg/modelform-%EC%97%90%EC%84%9C-form-field-%EB%A7%8C-update-%ED%95%98%EA%B8%B0

![aerial view of plain and road](assets/images/2023/04/tbwnugv4kok.jpg?resize=1024%2C768&ssl=1)
Share: Twitter Facebook
Bongjun Hur's Picture

About Bongjun Hur

BJ is a dev.

Seoul, Korea https://devbj.com