개인과제인 todolist 만들기의 백엔드 부분은 완료했다
다만 코멘트 기능이나 좋아요 기능 등을 추가로 구현하고 프론트엔드쪽도 구현해보고 싶어서 공부중이다.
def update(self, instance, validated_data):
instance.title = validated_data.get('title', instance.title)
instance.content = validated_data.get('content', instance.content)
instance.image = validated_data.get('image', instance.image)
instance.is_complete = validated_data.get('is_complete', instance.is_complete)
try:
if validated_data['is_complete'] is True:
instance.completion_at = timezone.now()
except KeyError:
pass
instance.save()
return instance
todolist의 serializer를 구현할 때 완료에 체크를 하고 submit을 하면 그 완료시간을 자동으로 저장하고 싶어서 위와 같은 코드로 구현했다.
validated_data중에 is_complete가 True값으로 왔다면 수정할 instance의 completion_at에 django.utils의 timezone.now()를 적용해서 현재 시간을 저장하는 것이다.
다만 이대로 끝내면 is_complete 값이 아예 없을 경우 에러가 발생하므로 try~except구문으로 구현했다.
2900위 -> 2250위
내 목표는 TOP100
개인과제인 DRF로 todolist만들기는 CRUD를 만드는 것으로 마무리 지었다.
조금 더 욕심이 생겨서 react를 공부하고 있다.
주말까지 공부해서 어설프게나마 프론트엔드 쪽도 구현하고자 한다.