首页 > 解决方案 > 如何在 Python-Django 框架中解决未定义的变量模型错误

问题描述

以下是views.py中的代码

class CreateGroup(LoginRequiredMixin,generic.CreateView):
    fields = ('name','description')
    model = Group

class SingleGroup(generic.DetailView):
    model = Group


class ListGroups(generic.ListView):
     model = Group


class JoinGroup(LoginRequiredMixin, generic.RedirectView):

    def get_redirect_url(self, *args, **kwargs):
        return reverse("groups:single",kwargs={"slug": self.kwargs.get("slug")})

    def get(self, request, *args, **kwargs):
        group = get_object_or_404(Group,slug=self.kwargs.get("slug"))

        try:
            GroupMember.objects.create(user=self.request.user,group=group)

        except IntegrityError:
            messages.warning(self.request,("Warning, already a member of 
                                           {}".format(group.name)))

        else:
            messages.success(self.request,"You are now a member of the {} 
                                             group.".format(group.name))

        return super().get(request, *args, **kwargs)


class LeaveGroup(LoginRequiredMixin, generic.RedirectView):

    def get_redirect_url(self, *args, **kwargs):
        return reverse("groups:single",kwargs={"slug": self.kwargs.get("slug")})

    def get(self, request, *args, **kwargs):

        try:

            membership = models.GroupMember.objects.filter(
                user=self.request.user,
                group__slug=self.kwargs.get("slug")
            ).get()

        except models.GroupMember.ObjectDoesNotExist:

            messages.warning(self.request,
                "You can't leave this group because you aren't in it."
            )
        else:
            membership.delete()
            messages.success(
                self.request,
                "You have successfully left this group."
            )
        return super().get(request, *args, **kwargs)

我正在使用 Django 开发一个社交媒体克隆网站。我创建了用于暗示组和组成员及其成员资格的视图。

它给出的错误为:未定义的变量“模型”“GroupMember”没有“对象”成员

标签: pythondjango

解决方案


推荐阅读