1. Python / Говнокод #21416

    −21

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    if request.user.is_superuser:
        payment_objs = Transaction.active_objects.all()
    else:
        # form ORM query string for single DB hit that would result in performance gain
        payment_objs = []
        q = "payment_objs = Transaction.active_objects.filter("
        for acc_id in user_acc_objs.values('id'):
            q += 'Q(from_account_id=%s)|' % acc_id
            q += 'Q(to_account_id=%s)|' % acc_id
        q[-1] = ')'  # replace last '|'
        eval(q)

    Оптимизация запросов по индуски.

    Запостил: toidi, 11 Октября 2016

    Комментарии (15) RSS

    Добавить комментарий