如何在html页面中显示动态数据

时间:2020-05-30 15:10:22

标签: python django web

如何将数据发送到club.html并随用户动态更改。

如何实现这一目标。我被困在这里。

我不知道哪里出了错,请帮帮我。

reference image

club.html

<div class='container'>
            <p class="newlycreated">Prisimax Welcomes you {{user.username}}
            <img src={{user.userprofile.userphoto.url}} id="ownimg"></p>
            <br>
            <p style="margin-left: 100px;">Your LEVEL: {{Clubmember.level}} </p>
            <p style="margin-left: 100px;">Your cash <i class="fas fa-wallet"></i> : {{Clubmember.usermoney}}</p>
        </div>

views.py

class club(View):
    template_name = "club.html"
    def get(self,*args,**kwargs):
        if self.request.user.userprofile.Isclubmem:
            club_member = Clubmember.objects.filter(user=self.request.user.userprofile)
            context = {
                'club_member': club_member
            }
            return render(self.request,'club.html',context=context)
        return render(self.request,'club.html')
    def post(self, *args ,**kwargs):
        if self.request.user.userprofile.Isclubmem:
            if self.request.method == 'POST':
                self.request.user.userprofile.userphoto = self.request.FILES.get('image')
                self.request.user.userprofile.phone_number = self.request.POST.get('userphonenumber')
                self.request.user.userprofile.Isclubmem = True
                club_member = Clubmember.objects.create(
                    user = self.request.user.userprofile,
                    refer = refgen(),
                )
                club_member.save()
                self.request.user.userprofile.save()
                return redirect('core:home')
        else:
            return redirect('/paytmpay')

1 个答案:

答案 0 :(得分:0)

在您查看的视图中,没有Clubmember命名对象传递给渲染。相反,您有club_member

club.html

        <div class='container'>
            <p class="newlycreated">Prisimax Welcomes you {{user.username}}
            <img src={{user.userprofile.userphoto.url}} id="ownimg"></p>
            <br>
            <p style="margin-left: 100px;">Your LEVEL: {{club_member.level}} </p>
            <p style="margin-left: 100px;">Your cash <i class="fas fa-wallet"></i> : {{club_member.usermoney}}</p>
        </div>

此外,您正在使用template_name = "club.html"变量,但未在视图中使用。您应该删除此变量或在代码中使用它:

            ...
            return render(self.request, self.template_name, context=context)
        return render(self.request, self.template_name)

此外,命名self.request.user.userprofile.Isclubmem不好。您需要签出python命名约定,也称为PEP8。

相关问题