Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在/local变量处取消绑定localerror';用户';分配前参考_Python_Django - Fatal编程技术网

Python 在/local变量处取消绑定localerror';用户';分配前参考

Python 在/local变量处取消绑定localerror';用户';分配前参考,python,django,Python,Django,我正在使用django favorite,并尝试显示“仅为用户获取博客帖子收藏夹”策略来获取我的收藏夹。在文档中,它说 content_type = get_object_or_404(ContentType, app_label='myblogapp', model='blogpost') favs = Favorite.objects.favorites_for_user(user).filter(content_type=content_type) 我会做好的。因此,在我的views.p

我正在使用django favorite,并尝试显示“仅为用户获取博客帖子收藏夹”策略来获取我的收藏夹。在文档中,它说

content_type = get_object_or_404(ContentType, app_label='myblogapp', model='blogpost')
favs = Favorite.objects.favorites_for_user(user).filter(content_type=content_type)
我会做好的。因此,在我的views.py中,我添加了

def index(request):
        user = MyProfile.objects.get(username=user)

        categories = Category.objects.all()
        try:
                sort = request.GET["sort"].strip()
                sort_method = SortMethods[sort]
                page = request.GET["page"].strip()
        except KeyError:
                sort_method = SortMethods.score
                page = 1

        if sort_method == SortMethods.date:
                post_list = Post.objects.order_by("-pub_date")
        else:
                post_list = Post.objects.all()
                post_list = sorted(post_list, key=lambda x: x.get_score(), reverse=True)

        paginator = Paginator(post_list, 30)

        try:
                posts = paginator.page(page)
        except PageNotAnInteger:
                posts = paginator.page(1)
        except EmptyPage:
                posts = paginator.page(paginator.num_pages)

        content_type = get_object_or_404(ContentType, app_label='main', model='post')
        favs = Favorite.objects.favorites_for_user(user).filter(content_type=content_type)
        context = {
                "posts": posts,
                "pages": paginator.page_range,
                "sort": sort_method.name,
                "categories":categories,
                "favs":favs,

        }
        return render(request, "main/index.html", context)
为了在我的index.html中使用fav,我只是简单地把{{fav}}放进去,我甚至不确定这是调用收藏夹的正确方法。但是我试过了,现在它在/

分配前引用的局部变量“user”,来自“user=MyProfile.objects.get”(username=user)

`我有userena应用程序,在userena模型内

  class MyProfile(UserenaBaseProfile):
    user = models.OneToOneField(User,
                                unique=True,
                                verbose_name=_('user'),
                                related_name='my_profile')
    intro = models.CharField(_('intro'),
                                       max_length=5, default="Hello")

我从这里打电话是为了得到用户…我希望这是正确的

第一行是否应该使用:

request.user
所以像这样:

user = MyProfile.objects.get(username=request.user)

第一行是否应使用:

request.user
所以像这样:

user = MyProfile.objects.get(username=request.user)

我尝试了很多方法,但使用您的解决方案,我无法查询“nick的个人资料”:必须是“用户”实例。我如何从userena评估用户?你知道吗?我有上面userena的模型,,,我想这应该比我想的简单,我尝试了很多东西,但用你的解决方案,我无法查询“nick的个人资料”:必须是“用户”实例。我如何从userena评估用户?你知道吗?我有上面userena的模型,我认为这应该比我想象的简单