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 값이 들어갔으면 좋겠습니다.