2012-10-25 5 views
0

나는 this을 읽었으며 하나의 질문이 있습니다. '다른 필드'에 액세스하는 방법은 무엇입니까?사용자에 대한 추가 정보에 액세스

모델 :

class UsersProfile(models.Model): 
    def __unicode__(self): 
     return self.user.last_name 
    user = models.OneToOneField(User) 
    car_num = models.IntegerField('car ID') 
    captain = models.BooleanField() 

전망 :

@login_required 
def profile(request): 
    return render(request, 'profile.html') 

그래서, 인증 후, 프로필 만 + 등 user.last_login 있지만 user.car_num를 작동 또는 user.captain 나는 약 get_profile()에 대해 읽었지 만 어디에 쓸 필요가 있니?

profile = request.user.get_profile() 

반환하는 방법은?

답변

1

당신은 다음과 같이 당신의 OneToOneField에 대한 related_name을 정의 할 수 있습니다 :

user = models.OneToOneField(User, related_name='profile') 

을 한 후 사용하여 해당 필드에 액세스

request.user.profile.car_num 
관련 문제