Ошибка zincrby() получил несколько значений для аргумента 'amount'

r.zincrby(name=self.get_product_key(product_id),
                          amount=1,
                          value=with_id)

Функцию, в которой происходит ошибка. Я не знаю, почему amoun получает несколько значений, если я передаю все аргументы по их именам. Код функции zincrby:

def zincrby(self, name, amount, value):
    "Increment the score of ``value`` in sorted set ``name`` by ``amount``"
    return self.execute_command('ZINCRBY', name, amount, value)

Func get_product_key return string

Код из книги Django 2 в exapmles:

    def products_bought(self, products):
    product_ids = [p.id for p in products]
    for product_id in product_ids:
        for with_id in product_ids:
            # Take products bought with this
            if product_id != with_id:
                # Increase their rating
                    r.zincrby(self.get_product_key(product_id),with_id,amount=1)

Если не сложно, можете объяснить за что отвечает каждый аргумент функции zincrby.Я так понимаю, что после выполнения этой функции у меня будет рейтинг для каждого товара с указанием наиболее часто покупаемых товаров с этим товаром. Сам код взят из рекомендательного сервиса.

Вернуться на верх