我不想创建两个回调函数。我希望此回调使用 if-elif-else 语句以有条件的方式执行。
首先,代码能正常工作吗?所以如果不是,将 house.likes 和 house.checks 放在 if-else 或 if-elif-else 语句中的最佳方法是什么?
def callback(ch, method, properties, body):
print('Received in config')
id = json.loads(body)
print(id)
house = House.objects.get(id=id)
house.likes = house.likes + 1
house.save()
print('House likes increased!')
house.checks = house.checks + 1
house.save()
print('House checks increased!')
我还没有尝试重构它……还在研究代码块。我不想破坏东西。
代码将按原样运行,但无论任何条件如何,它都会始终执行
house.likes
和 house.checks
增量。如果你想根据特定条件执行增量:
def callback(ch, method, properties, body):
print('Received in config')
id = json.loads(body)
print(id)
house = House.objects.get(id=id)
if not house.liked_by_user:
house.likes = house.likes + 1
house.save()
print('House likes increased!')
house.checks = house.checks + 1
house.save()
print('House checks increased!')
可以使用类似
if-elif-else
的语句,根据不同的条件执行不同的增量。