2012-10-23 70 views
0

這裏是如何讓用戶與相關的配置文件:Django: Difference between User.objects.profile.all() and User.objects.get_profile()?如何通過配置文件字段的值來獲得用戶對象

但這個例子是使用用戶ID。我想activation_key這是在用戶配置對象來獲取用戶,我嘗試類似:

UserProfile.objects.select_related('user').get(activation_key=key) 

,但我得到:

用戶配置匹配查詢不存在的。

+0

什麼是英語新有一個UserProfile和'activation_key = key'? –

+0

向我們展示您的模型。 –

回答

0
user = User.objects.get(userprofile__activation_key='key') 
2

如果你正在嘗試做的是得到你的用戶配置,如下面的例子相關的django.contrib.auth.models.User對象:

from django.contrib.auth.models import User 

class UserProfile(models.Model): 
    user = models.OneToOneField(User) 
    activation_key = models.CharField(...) 

我會做的是:

user_profile = UserProfile.objects.get(activation_key='some_key') 
user = user_profile.user 

希望那是你正在尋找

相關問題