Yan*_*ick 10 django django-views
我得到以下错误'dict'对象没有属性'user_id'但不确定我理解错误.由于user_id可从查询集中获得.
错误发生在最后一行代码中
users_who_played = UserEvent.objects\
.values('user_id')\
.annotate(total_season_points=Sum('points'))\
.filter(event__season_id=season.id)\
.order_by('-total_season_points')\
for i, user_who_played in enumerate(users_who_played):
try:
user = UserSeason.objects.
get(user=user_who_played.user_id, season=season.id)
Run Code Online (Sandbox Code Playgroud)
Ism*_*awi 28
查询集上的.values()方法返回一个查询集,当你迭代它时返回字典而不是模型对象 - 这user_who_played也是一个字典,这意味着你应该通过编写user_who_played['user_id']而不是使用点属性语法来访问用户标识.
如果您只想从数据库中检索某些字段但仍希望处理模型对象,则另一种方法是使用该.only()方法而不是.values().
| 归档时间: |
|
| 查看次数: |
17020 次 |
| 最近记录: |