'User'对象没有属性'bookmark_set'

时间:2014-03-11 23:33:40

标签: python django

我有这个错误---> '用户'对象没有属性' bookmark_set'

这里是models.py文件

from django.db import models
from django.contrib.auth.models import User

class Link (models.Model):
    url=models.URLField(unique=True)
class Bookmarks(models.Model):
    title= models.CharField(max_length=200)
    user = models.ForeignKey(User)
    link = models.ForeignKey(Link)


这里是文件Views.py

def user_page(request, username):
    try:
        user= User.objects.get(username=username)
    except:
        raise Http404('requested user not found.')
    bookmarks=user.bookmark_set.all()
    template=get_template('user_page.html')
    variables=Context({
        'username':username,
        'bookmarks': bookmarks,
    })
    output= template.render (variables)
    return HttpResponse(output)

1 个答案:

答案 0 :(得分:2)

user= User.objects.get(username=username)
bookmarks = user.bookmarks_set.all()

我担心您的错误是您的模型被命名为带有's'的书签,因此Manager被称为bookmarks_set而不是bookmark_set,因为它是从相关模型的名称自动生成的。

请参阅: https://docs.djangoproject.com/en/dev/topics/db/queries/

在“跟随关系”下“”