我是Python / Django的新手,如果我忽略了一些简单的错误,请原谅我。 我正在尝试使用Twython并且几乎要复制代码here
我似乎无法使用这样的点语法获取TwitterProfile:
user = request.user.twitterprofile
它给了我错误:
DoesNotExist at /social/user_timeline/
TwitterProfile matching query does not exist.
但如果我得到这样的个人资料:
user = TwitterProfile.objects.get(user = u)
似乎工作正常......花了好几个小时才搞清楚......
我还必须在TwitterProfile类中为用户添加related_name:
user = models.OneToOneField(User, related_name='twitteruser')
知道为什么我不能像那样访问TwitterProfile吗?
答案 0 :(得分:3)
首先,您需要在settings.py中定义AUTH_PROFILE_MODULE
:
from twython_django_oauth.models import TwitterProfile
AUTH_PROFILE_MODULE = TwitterProfile
然后,您可以从请求中访问您的个人资料:
request.user.get_profile()
答案 1 :(得分:3)
related_name
定义链接模型上属性的名称,因此您可以执行以下操作:
user = request.user.twitteruser