以下代码给出了以下错误:
TypeError: unsupported operand type(s) for +: 'int' and 'Row'
import datetime
#product withholding in days
days = (0)
pdays = db(db.product.withholding_period>0).select().first()
wdate = db(db.stock_task.completed_date>0).select().first()
fdate = wdate + datetime.timedelta(days+pdays)
任何人都可以解释导致此错误的原因以及如何解决错误吗?
答案 0 :(得分:1)
错误是因为您尝试将days
(即int)和pdays
(即Row)相加。 +
运算符不适用于这两种类型的参数
答案 1 :(得分:0)
您无法将数据库Row添加到int。您需要从行中的正确列中提取pdays
和wdate
。将下面的列名称与表格中的正确名称交换:
import datetime
product withholding in days
days = (0)
# get the pdays
pdays_row = db(db.product.withholding_period>0).select().first()
pdays = pdays_row.withholding_period
# get the wdate
wdate_row = db(db.stock_task.completed_date>0).select().first()
wdate = wdate_row.completed_ date
fdate = wdate + datetime.timedelta(days + pdays)