django에서 ForeignKey에 관한 질문입니다.

조회수 2312회

1)ForeignKey로 설정한 테이블의 데이터들중 한 데이터를 default로 하고 싶으면 어떻게 해야하면 좋을까요?

class Condition(models.Model): #상태명 Ex) 신청/예정/처리/완료
    state_name=models.CharField(max_length=30)
    def  __str__(self):
        return self.state_name

class Apply(models.Model):
     condition=models.ForeignKey(Condition) 

Condition 테이블에는 신청/예정/처리/완료라는 데이터를 만들 예정이고요. 사용자가 from을 못보게 처리할 예정입니다.(관리자만 확인하게끔)

2) 저번 질문입니다. 회원가입( Register) 클래스에는 user와 company 및 office모델이 포함되어 있습니다. 제가 로그인을 하고 글을 작성을 할려고 합니다. 그러면 글을 작성시 제 로그인한 정보에서 company와 office데이터를 글에 포함시키려고합니다.

제가 생각한것은 글(Apply)신청 클래스에서 Register를 외래키를 넣어 글을 쓰면 자동으로 유저의 정보를 포함시키려고 했습니다. 그런데 작성을 해보니 글을 작성시 사용자 글 양식에 모든 회원의 저장된 데이터 중에서 선택을 하게 작성이 되어져서 나와서 자동으로 저장하게 변경하고 싶어 질문을 하게 되었습니다.

class Register(models.Model): #회원가입폼
    user=models.OneToOneField(User,on_delete=models.CASCADE) #id/PW/Email
    company=models.ForeignKey(Company) #회사명
    office=models.CharField(max_length=30) #지점 및 부서

   def __str__(self):
            return self.Title+" "+self.office

class Apply(models.Model):
    register=models.ForeignKey(Register,null=True) #자동으로 회원 정보가 저장
    username_equipment=models.CharField(max_length=30)

이미지

위에화면과 같이 사용자의 팀을 선택하는 화면이 나옵니다. 로그인한 사용자의 정보가 자동으로 들어갔으면 좋겠습니다.

결론 Apply클래스에 register의 ForeignKey를 설정해주면 user를 선택하게 되는데 자동으로 접속한 사용자의 Register 값이 들어갔으면 좋겠습니다.

1 답변

답변을 하려면 로그인이 필요합니다.

Hashcode는 개발자들을 위한 무료 QnA 사이트입니다. 계정을 생성하셔야만 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 계정을 생성하셔야만 글을 작성하실 수 있습니다.