Size: a a a

Django [ru] #STAY HOME

2020 January 11

l

let45fc in Django [ru] #STAY HOME
Vladimir
ну можно так понимаю любое кол-во файлов и не обязательно utils называть, верно?
Конечно
источник

tn

tot samiy neizvestniy in Django [ru] #STAY HOME
https://gist.github.com/m0nte-cr1st0/39eafec32d976c4b7f47015948a5ef4e

Что делаю не так, что получаю ошибку "Statistic object is not serializable"?
источник

T

Tim in Django [ru] #STAY HOME
вместо obj.statistics.annotate(total_clicks=Sum('clicks'))
это obj.statistics.annotate(total_clicks=Sum('clicks')).total_clicks
источник

tn

tot samiy neizvestniy in Django [ru] #STAY HOME
Tim
вместо obj.statistics.annotate(total_clicks=Sum('clicks'))
это obj.statistics.annotate(total_clicks=Sum('clicks')).total_clicks
Так тоже не работает
источник

tn

tot samiy neizvestniy in Django [ru] #STAY HOME
obj.statistics.annotate(total_clicks=Sum('clicks'))  возвращает кверисет со статистики юзера
источник

tn

tot samiy neizvestniy in Django [ru] #STAY HOME
Агрегация будто не отрабатывает вовсе
источник

T

Tim in Django [ru] #STAY HOME
tot samiy neizvestniy
obj.statistics.annotate(total_clicks=Sum('clicks'))  возвращает кверисет со статистики юзера
User.objects.filter(pk=obj.pk).annotate(total_clicks=Sum('statistics__clicks')).first().total_clicks
источник

tn

tot samiy neizvestniy in Django [ru] #STAY HOME
Tim
User.objects.filter(pk=obj.pk).annotate(total_clicks=Sum('statistics__clicks')).first().total_clicks
Спасибо
источник

mc

m0nte cr1st0 in Django [ru] #STAY HOME
Можешь ещё так попробовать:
источник

mc

m0nte cr1st0 in Django [ru] #STAY HOME
sum(obj.statistics.only('clicks').values_list('clicks', flat=True))
источник

tn

tot samiy neizvestniy in Django [ru] #STAY HOME
И так работает
источник

tn

tot samiy neizvestniy in Django [ru] #STAY HOME
m0nte cr1st0
sum(obj.statistics.only('clicks').values_list('clicks', flat=True))
Этот вариант быстрее работает. Спасибо. Интересно, может, ещё какие варианты есть)
источник

mc

m0nte cr1st0 in Django [ru] #STAY HOME
tot samiy neizvestniy
Этот вариант быстрее работает. Спасибо. Интересно, может, ещё какие варианты есть)
Джанговское суммирование возьми
источник

mc

m0nte cr1st0 in Django [ru] #STAY HOME
Плюс онли убери, оно здесь лишнее
источник

mc

m0nte cr1st0 in Django [ru] #STAY HOME
Sum(obj.statistics.values_list('clicks', flat=True))

Вот самый оптимальный вариант, думаю
источник

h

hunnidolla in Django [ru] #STAY HOME
источник

h

hunnidolla in Django [ru] #STAY HOME
Чего оно ругается то
источник

h

hunnidolla in Django [ru] #STAY HOME
debug закоментирован
источник

tn

tot samiy neizvestniy in Django [ru] #STAY HOME
hunnidolla
Чего оно ругается то
А что у тебя с 27-28 строками?
источник

h

hunnidolla in Django [ru] #STAY HOME
опа
источник