0

我是 Python/Django 的新手,所以如果我忽略了一些简单的错误,请原谅我。我正在尝试使用 Twython 并在这里复制代码

我似乎无法使用这样的点语法获得 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 吗?

4

2 回答 2

3

首先,您需要AUTH_PROFILE_MODULE在 settings.py 中定义您的:

from twython_django_oauth.models import TwitterProfile

AUTH_PROFILE_MODULE = TwitterProfile

然后,您可以通过请求访问您的个人资料:

request.user.get_profile()
于 2012-10-18T06:27:13.667 回答
3

related_name定义链接模型上的属性名称,因此您可以执行以下操作:

user = request.user.twitteruser
于 2012-10-18T06:29:50.217 回答