html显示queryset,Django用queryset将对象从视图返回到HTML?

我试图用HTML显示Django中查询集的一些信息。但我不知道最好的办法。在

我的想法是,当我打开网页,这显示了用户的名字和与之相关的比赛。用户可以在Django的管理中创建竞争。在

我的网址是。在url(r'^home/(?P\w+)', HomeView.as_view(), name='home'),

模型。在

^{pr2}$

在视图.py在class HomeView(ListView):

model = User, Competition

template_name = 'home.html'

context_object_name = 'company'

def get_queryset(self, **kwargs):

company = self.kwargs['company_name']

try:

queryset = User.objects.filter(username__exact=company).get()

except User.DoesNotExist:

queryset = None

return queryset

HTML主页显示用户名,例如:{% if company %}

{{company.username}}

{% endif %}

但是,我需要用HTML中的'for'显示用户创建的比赛。在

我尝试用chains返回两个查询集,但我没有使用它。在

还有这个。在queryset2 = Competition.objects.filter(user__username__exact=company).get()

get()显示返回多个对象的错误。这是合乎逻辑的,因为用户有3个与此相关的竞争。在

举个小例子?或者任何解决我问题的方法。在

非常感谢

我试过了,但是“User”对象不可编辑(显然它只是一个)class HomeView(ListView):

model = User

template_name = 'home.html'

context_object_name = 'company'

def get_queryset(self, **kwargs):

company = self.kwargs['company_name']

try:

queryset = User.objects.filter(username__exact=company).get()

queryset2 = Competition.objects.filter(user__username__exact=company)

result_list = list(chain(queryset, queryset2))

except User.DoesNotExist:

result_list = None

return result_list

我一直在尝试删除第一个查询集的get()并将数据返回到HTML。在

我怎样才能在HTML中访问列表的字段,但是使用类,如果我打印变量'company',结果就是这样。在[, , ]

但是对于'for'我只获得字符串值。如何区分“用户”和“竞争对手”{%for compa in company%}

{{compa}}

{%endfor%}

结果是:

迭戈

测试1

测试2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值