@property
def wall(self):
result = self.posts.all()
for friend in self.friends.all():
if not result:
result = friend.posts.all()
else:
result = result | friend.posts.all()
return result.order_by('-id')
Туда же.
И вот это:
ACCOUNT_SID = "**"
AUTH_TOKEN = "**"
client = TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN)
SENDER = '+14694252378'
Хотя, наверное, ты изменил токен. У меня он не заработал. А может, он просто неоплачен?
deposit_total = sum((x.total for x in _user.deposits.all()))
outlays_total = sum((x.total for x in _user.outlays.all()))
incomes_total = sum((x[0] for x in _user.tree_node1.cash_incomes)) if TN1.objects.filter(account__id=_user.id) else 0
cashes_total = sum((x.total for x in _user.cashes.all()))
income_transfers_total = sum((x.total for x in _user.income_transfers.all()))
outcome_trasfers_total = sum((x.total for x in _user.outcome_transfers.all()))
Может, лучше использовать агрегацию? Если у тебя миллион записей, будешь все передавать в оперативку, а потом считать в питоне?
PARENT_PAYMENT = 50.0
GRANDPARENTS_PAYMENT = 100.0
LEVEL_REWARDS = (0.19, 0.17, 0.15, 0.13, 0.11, 0.09, 0.07, 0.05, 0.02, 0.01, 0.01)
В файле models.py
Обычно такое выносят в файл констант. Один на проект или на апп, зависит от разработчика, но константы там искать и править явно удобнее.
CBV предпочтительней обычных вьюх хотя бы потому, что не нужно городить вот это:
https://github.com/zuberok/wts/blob/master/project...
Полупустые аппы (типа apis или public c одиноким редиректом) - зачем?
Могу продолжить.
UPD:
Убрал токен.