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

Han Kim님의 프로필 이미지

작성한 질문수

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

안녕하세요 선생님!!!!!! createview form_valid에 대해서 질문드립니다!!

21.12.21 16:20 작성

·

204

0

안녕하세요!!!!!!! 선생님 스승님!!!!!!!!!!!!!!!!!!♥♥♥♥♥

createview에 대하여 질문드릴게 있습니다!!!!!!!!!!

 

먼저 설계한 모델 간단히 보여드리면! (나머진 길어서 생략)

 

위에는 driver모델이구요!

 

위는 driver 모델과 1대1 외래키 관계인 Transfer모델입니다.

 

제가 원하는 구현은 

 

※ 위는 for문으로 driver모델을 루프를돌면서 template에 표현했습니다.

 

위의 나온 표대로 키값이 있고 (키값 = driver모델의 driver_pk 필드입니다) 이직 날짜가 아직없는(tranfer모델이 아직 생성되지 않은) 키값에 대해서는 새롭게 tranfer모델을 생성하고 싶습니다!!!

(이미 tranfer모델이 있는 driver모델에 대해서는 저렇게 이직날짜가 나와있도록 표현했습니다)

 

위 그림 나온대로 정해진 키값에 대해서만 tranfer모델을 create하고 싶은데 

 

위 사진에 보시면 driver모델이 선택할 수 있도록 활성화가 되있습니다.  (위는 tranfer modelform을 표현한것입니다!)

즉 위 사진에 나온 키값이 '오로라1351 ' 행에 있는 이직create 버튼(회색버튼)을 누르면 

'오로라1351'키값(Driver) 은 이미 고정되서 수정할수 없도록 disable상태가 되어있고 나머지만 이직날짜, 이직횟수등만 create해서 저장하고 싶습니다!! (따로 구현한 updateview는 동작이 잘됩니다!!)

 

 

 

제생각엔 위와 같이 form_valid를 건들면 될것 같은데 (물론 제생각입니다) 어떻게 하면 좋을까요!!??

 

존경하고 감사합니다!!!!

 

 

답변 1

1

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

2021. 12. 21. 22:33

안녕하세요.

O2O 필드인 driver는 로직을 통해 자동 입력되는 것이므로, 모델폼인 TransferForm에서는 driver 필드를 제외하시고 form_valid 시에 자동 입력토록 하시는 것이 맞을 듯 합니다.

폼 템플릿에서 driver 내역 노출은 템플릿으로 transfer 인스턴스를 넘겨서, 템플릿 내에서 직접 노출토록 조정하시는 것이 가장 간결하고 정확한 방법인 듯 합니다.

Han Kim님의 프로필 이미지

작성한 질문수

질문하기